星期二, 一月 31, 2012

VIM学习笔记 光标(Cursor)

光标显示选项

可以通过以下命令设置guicursor选项,来定义图形界面下的光标显示:

:set guicursor=mode:style[-highlight],mode:style[-highlight],...

其中,mode是以下选项的组合:

n常规模式
v可视模式
ve可视模式但不包括selection
o操作符等待模式
i插入模式
r替换模式
c 命令行常规模式
ci命令行插入模式
cr命令行替换模式
sm插入模式下的显示匹配
a所有模式

其中,style如下:

horN水平栏,字符高度的N个百分比
verN垂直栏,字符宽度的N个百分比
block光标块,覆盖整个字符
blinkwaitN光标开始闪烁前的延迟
blinkonN光标显示的时间
blinkoffN光标不显示的时间

例如,以下命令会在常规、命令和插入模式下,将光标设置为相当于当前字符50%宽度的方块,并使用ncvCursor组高亮显示:

:set guicursor=n-c-v:ver50-ncvCursor

而以下命令则启用不闪烁的方块光标,在插入模式下,使用iCursor组高亮显示,而在可视化模式下,则使用vCursor高亮显示组。

:set guicursor=i:block-iCursor-blinkon0,v:block-vCursor

关于光标显示的更多信息,请使用以下命令查看帮助文档:

:help guicursor

光标颜色

利用以下命令,可以改变光标的前景色和背景色:

:highlight Cursor guifg=white guibg=black

:highlight iCursor guifg=white guibg=steelblue

光标行/列

利用以下命令,使用CursorLine组高亮显示光标所在的屏幕行:

:set cursorline

而利用以下命令,则使用CursorColumn组高亮显示光标所在的屏幕列:

:set cursorcolumn

使用以下命令同时启用光标行和光标列,将显示“十字架”光标,可以准确定位当前位置:

:set cursorline cursorcolumn

cursorline cursorcolumn

利用以下命令,可以改变光标所在行的颜色:

:highlight CursorLine guibg=lightblue ctermbg=lightgray

可以使用以下命令,取消高亮显示光标所在的行和列:

:set nocursorline nocursorcolumn

命令小结
:set guicursor设置光标选项
:set cursorline高亮光标所在的屏幕行
:set cursorcolumn高亮光标所在的屏幕列

Ver: 1.0<上一篇 | 目录 下一篇>

星期六, 一月 14, 2012

VIM学习笔记 配置文件(vimrc)

在vim启动过程中,首先将查找配置文件并执行其中的命令。而这些初始化文件一般有vimrc、gvimrc和exrc三种。

利用:version命令,可以得到配置文件的详细信息。

version-vimrc

注意:如果执行gvim,那么$VIMRUNTIME/menu.vim也会被执行。

配置文件位置

vimrc是主配置文件,它有全局和用户两种版本。

全局vimrc文件,存放在Vim的安装目录中。可以使用以下命令,确定Vim的安装目录:

:echo $VIM

默认情况下,系统vimrc存放在以下位置:

Linux: /usr/share/vim/vimrc

Windows: c:\program files\vimrc

用户vimrc文件,存放在用户主目录中。可以使用以下命令,确定用户主目录:

:echo $HOME

默认情况下,用户vimrc存放在以下位置:

Linux: /home/username/.vimrc

Windows: c:\documents and settings\username\_vimrc

注意:用户配置文件优先于系统配置文件。

gvimrc是GVIM的配置文件,它也有全局和用户两种版本,并且存放在与vimrc相同的目录中。

默认情况下,系统gvimrc存放在以下位置:

Linux: /usr/share/vim/gvimrc

Windows: c:\program files\vim\_gvimrc

默认情况下,用户gvimrc存放在以下位置:

Linux: /home/username/.gvimrc

Windows: c:\documents and settings\username\_gvimrc

exrc文件,仅用于向后兼容olvi/ex,它的全局和用户两种版本也放置于vimrc相同的目录里。除非你使用vi-compatible模式,否则不需要关注exrc配置文件。

注意:在Unix和Linux下,vim的配置文件被命名为以点开头的隐藏文件;而在Windows下,配置文件则以下划线开头命名。

编辑配置文件

可以使用以下命令,新建缓冲区来编辑配置文件:

:edit $MYVIMRC

也可以使用以下命令,新建标签页来编辑配置文件:

:tabedit $MYVIMRC

例如,我们可以在配置文件中使用以下命令,来设置vim的选项:

:syntax on "打开语法加亮功能

:set shiftwidth=4 "设置缩进宽度为4个空格

其中,单引号(")为注释内容。

应用配置文件

修改配置文件后,需要重新启动Vim,或使用:source命令来应用新的设置:

:source $MYVIMRC

我们可以在配置文件中增加以下命令,在保存后自动应用配置:

autocmd bufwritepost .vimrc source $MYVIMRC

配置文件实例

以下是本人的vim配置文件内容,供各位参考:

星期日, 一月 08, 2012

柱形图(Bar Chart)

柱形图(Bar Chart),适用于显示一段时间内数据的变化或各系列之间比较。(Show data values in comparison to one another.)

BAR CHART

柱形图不仅可表现单一的数据,也可将多种数据进行并列比较。同时,我们还可以对柱形进行艺术加工,柱形本身也能采用其他的象形符号来表现。另外,当参与比较的数据差异较大时,可将柱形转变为用圆形或正方形等紧凑的图形,通过其面积的不同来进行比较。更进一步的话,还能使用立方体\球体,用体积的形式来表示。折线图只能表现数据随时间变化的过程,而柱形图兼具这个功能。此外,饼围所表示的是数据在 100%中所占的比例,使用柱形图,也能在一条柱形中表现这样的比例关系。正因为柱形图是这样一种全能的统计图,所以它是统计图中最为基础的表现形式。

BarChart-2
图片来源:《图解力》

通过为柱形图设置3D效果,可以使显示风格更为现代:

Bar Chart-3D

将柱形图横置,可以突显数据对比和排序效果,但是时间概念就会削弱甚至丧失:

Bar Chart-Horizontal

下图统计了2011年度F1比赛中各位车手受到处罚的情况。汉密尔顿毫无意外地排名榜首。图表的纵轴表示受罚的次数,并且利用不同的色彩显示了受罚的类型(比如灰色表示通过维修站)。图表的横轴列示车手头像,从受罚最多到受罚最少依次排列,车手的驾驶风格也变得一目了然。通过增加形状、色彩和图像,原本死气沉沉的柱形也可以变得生动活泼,并且体现出更多数据和含义。

Bar Chart-F1

结合使用数字和颜色,在以下横向柱形图中,同时统计了2016年F1银石站车手进站和换胎的情况。纵轴列示了各位车手的姓名;而横轴则显示在全部52圈比赛中停站换胎的节奏:其中,数字表示进站圈数,而不同颜色的横轴则代表使用不同类型的轮胎。

BarChart-PitStop

卢夫斯·西格在其著作《欧洲地图集》(Atlas of Europe)中,使用艺术化的柱形图展示了西欧的原油消耗:

BarChart-AtlasOfEurope

星期三, 一月 04, 2012

使用SQL语句查看 Hyperion Planning 维度成员的UDA

使用以下语句,可以查询某个维度下成员的UDA属性:
select
O.Object_Name as Name,
OA.OBJECT_NAME as Alias,
U.UDA_VALUE as UDA
from hsp_member_to_uda M
inner join hsp_uda U
on M.UDA_ID=U.UDA_ID
inner join hsp_object O
on M.MEMBER_ID=O.OBJECT_ID
inner join hsp_alias A
on M.MEMBER_ID=A.MEMBER_ID
inner join hsp_object OA
on A.ALIAS_ID=OA.OBJECT_ID
inner join hsp_member D
on D.Member_Id=O.Object_Id
inner join hsp_object OD
on D.Dim_Id=OD.Object_Id
-- Specify Dimension
where OD.OBJECT_NAME='Entity'
order by O.Object_Name

显示效果如下图所示: