极湖

无不用其“极”

Subscribe to RSS feed

Posts tagged with "Editor"

vim 大小写变换命令

,

选取区域变大写
gU

选取区域变小写
gu

例)
将一个词变大写
gUw

将两个词变大写
gU2w

将整行变大写
gU$

将光标后面的10个字符变大写
gU10l

将整个文件变大写
guGG

把 Windows 的 Notepad 换成 Notepad2

,

Notepad2 很小巧,然而功能强大,和 Windows 自带的 Notepad 相比,说有天壤之别也不为过。

网上有不少文章介绍如何把 Windows 的 Notepad 换成 Notepad2,步骤都比较复杂,而且成功率不高,尤其是 XP SP2 以后的版本。

经我验证,这个网页上介绍的方法比较好使。方法是在 Notepad2 的文件夹内做一个批处理文件,然后执行。原文介绍的批处理如下(注释已译):
@echo 替换 NOTEPAD.EXE 为 notepad2.EXE ...
REM
REM 1. 阻止系统自动恢复文件
attrib -r -h -s %systemroot%\system32\dllcache
del %systemroot%\system32\dllcache\notepad.bak.exe
ren %systemroot%\system32\dllcache\notepad.exe notepad.bak.exe
attrib +r +h +s %systemroot%\system32\dllcache
attrib -r -h -s %systemroot%\ServicePackFiles\i386
del %systemroot%\ServicePackFiles\i386\notepad.bak.exe
ren %systemroot%\ServicePackFiles\i386\notepad.exe notepad.bak.exe
attrib +r +h +s %systemroot%\ServicePackFiles\i386 

REM
REM 2. 备份 Windows 和 System32中 的 Notepad
del %systemroot%\system32\notepad.bak.exe
copy %systemroot%\system32\notepad.exe %systemroot%\system32\notepad.bak.exe
copy %systemroot%\notepad.exe %systemroot%\notepad.bak.exe
REM
REM 3. 拷贝 notepad2 并覆盖 Windows 和 System32中 的 Notepad
del %systemroot%\notepad.exe
copy notepad2.exe %systemroot%\notepad.exe
copy notepad2.exe %systemroot%\system32\notepad.exe
REM
@echo 替换完成。
@echo
@echo 注: 如果 Windows 文件保护的对话框弹出,请按“取消”。

Windows 版 gVim 之最佳UTF-8解决方案

,

在 Windows 下安装了 gVim 的官方发行版,按照网上一些方法修改 _vimrc 文件,倒腾来倒腾去,编辑utf-8或其他多字节编码文件的时候,总是有这样那样的问题。

于是找到了这个 vim UTF-8日本語版,作者提供单独的配置文件和完整的Vim压缩包,压缩包下载解压后就能使用,无须安装。经我测试,一打开utf-8文件就正常显示,打开其他编码(Shift-JIS, EUC)的文件,也不用任何其他辅助命令,就能正常显示日文。尝试打开GB2312中文编码的文件,显示乱码,没办法,这是日本人做的,不考虑中文编码的对应也是情理之中。不过,日文中文的处理方法是相通的,编码不同而已,因此我想只要修改一下配置文件,就能解决编辑中文编码(GB2312,GBK等)文件的问题。

下载链接

配置文件(包括dll)压缩包
vim-cfg.zip

解压后即可使用的压缩包
vim73-aio.zip

提示:解压后把根目录下的 _sample_vimrc 和 _sample_gvimrc 拷贝到当前用户根目录下,并改名为 _vimrc 和 _gvimrc。

几个贴心的 Vim 命令和插件

,

命令
* 向前查找当前光标处的单词
# 向后查找当前光标处的单词
% 查找匹配的括号 {} [] ()
<C-p> 自动补齐(向前查找)
<C-n> 自动补齐(向后查找)
:Ex 文件和目录浏览
gf 打开光标处的文件

插件
matchit.vim
能用 % 查找HTML、PHP中匹配的tags,例如在<tr>输入命令 % 即可查找与之匹配的</tr>。

snipMate
很多人羡慕 OS X 下面的 TextMate,有了这个插件,基本上不用再羡慕了。

The NERD tree
给 Vim 加一个漂亮的树形文件浏览器。

LookupFile
快速查找和打开文件,需要最新版的 genutils

最后补上我比较喜欢的配色方案:
molokai

以上信息整理加工自 LinuxSir.org 的这个帖子

CodeMirror:浏览器内的高亮文本编辑器

, ,

因为要做编辑器,所以找了很多 OpenSource 的 WYSIWYG 编辑器代码,当然都是 JavaScript。无意间发现一个好东西——CodeMirror,看了这个东西,我吃惊不少,因为它几乎已经达到了桌面程序的水平,写程序代码能够高亮彩显(目前支持 HTML 和 Javascript),还有自动缩进、括号匹配提示等功能,而且比较流畅。

看了一下 CodeMirror 的代码,觉得很不一般,称得上短小精悍,一看就知道作者的 JavaScript 功底相当深厚,称得上是大师级的水平。作者在他网站上还发布了一本 JavaScript 的教程——Eloquent JavaScript,我看也是个难得的东西,初学者或者是有经验的开发人员都可以参考。

用 JavaScript 写的类似编辑器还有


以上列表也是 CodeMirror 的作者介绍的,看看这些东西,也许您会和我一样惊叹:JavaScript 实在是神奇!

从 UE 到 EmEditor

, ,

首先,这儿的“UE”指的是 UltraEdit

以前我一直用UE编辑代码,至少有5年吧,最近两年却不怎么用UE了,原因就是用了 EmEditor,顺手之后就不忍放弃了。

UE的列模式确实很好用,十六进制的编辑功能确实很“Ultra”。

先说说EmEditor的优点:

多语言多内码支持;(这一点UE没法比)
非常强悍的正则查找替换功能;(正则表达式很标准,查找结果全部着色,一目了然)
非常强悍的宏功能;(默认是JavaScript,几乎无所不能)
很好的插件体系;(因此可以无限扩展,这和Vim和Emacs的路线一致)
非常方便的文件比较功能;(这个UE做得也不错)
多文件操作,包括查找替换等;(这个功能UE也不错,可以说各有千秋)
界面的定制功能不弱,基本能够满足个性化的需求;
... ...

接下来说说EmEditor不足的地方:

作为插件的目录文件树(TreeView)反应迟钝,增删文件和目录不能立即反映,按F5可更新整个树,这个更新过程其实做了很多无用功;
列模式或者方块模式的编辑不如UE;
多文件查找的结果,以新文件中的链接的方式实现,不是很方便,每点开一个文件,都要切换一次文档;(这一点UE做得很好,放在下面的列表里面)
... ...

对EmEditor的一点期待:

实现TextMate那样的代码块"智能编辑"

VIM常用代码编辑命令

, ,

■折叠
zf} 使用动作命令折叠一个段落
zfi{ 折叠{}内部代码( 或 zfi}
zfa{ 折叠{}整块代码( 或 zfa}
v}zf 使用可视模式折叠一个段落
zf'a 折叠到一个标记上( 先在某一行执行 ma
zo 打开折叠
zc 关闭折叠

■块缩进
>i{ {}内部向右缩进
<i{ {}内部向左缩进
>a{ {}整块向右缩进
<a{ {}整块向左缩进

■显示/隐藏行号
:set nu
:set nonu

■插入行号
:g/^/exec "s/^/".strpart(line(".")." ", 0, 4)

■插入字符串
:%s/^/mv /g 在每一行的头部插入“mv ”

■大小写转换
guu 整行小写
gUU 整行大写

正则表达式:给HTML的属性值加引号

, ,

替换前: ([A-Za-z]+)=([#A-Za-z0-9_%]+)
替换后: \1="\2"

这是用EmEditor一次替换的方法,其他支持正则表达式的编辑器应该是大同小异。

目前发现的缺点

content="text/html; charset=utf-8"
会被替换成
content="text/html; charset="utf"-8"

还有JavaScript的变量赋值得地方也需注意。

Vim的窗口分割

,

Vim的窗口分割命令总结如下:

:sp 上下分割窗口
:sp 文件名 编辑指定文件并上下分割窗口

:vsp 左右分割窗口
:vsp 文件名 编辑指定文件并左右分割窗口

Ctrl-w p 在窗口间切换
Ctrl-w k 移到上面窗口
Ctrl-w j 移到下面窗口
Ctrl-w l 移到右面窗口
Ctrl-w h 移到左面窗口

Ctrl-w + 扩大光标所在窗口
Ctrl-w - 缩小光标所在窗口
Ctrl-w = 使窗口大小一致

推荐两个Vim的插件

,

1.snippetsEmu
自动产生代码片段的插件。

安装:
# mkdir -p ~/.vim/after/ftplugin
# vim snippetsemu1_1.vba
:so %


使用:
编辑一个Perl文件,输入:

for<tab><tab><tab><tab>

for<tab>i<tab>100<tab><tab>

即可了解该插件的功能。

2.MiniBufExplorer
类似UltraEdit和Editplus的Tab,同时编辑多个文件的时候非常有用。

安装:
# cp minibufexpl.vim /usr/share/vim/vimcurrent/plugin

使用:
在gVim下可以用鼠标点击来切换当前编辑的文件。
在Console下,先用<Ctrl-w-k>激活MiniBufExplorer区,然后用<Tab>或<Shift-Tab>进行文件切换。

实际上,用:bn:bp即可在文件之间切换(可以在设置文件中绑定按键)。
February 2012
S M T W T F S
January 2012March 2012
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29