トップページunix
988コメント268KB

Vim Part21

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2012/07/16(月) 01:09:05.70
Vim 6以降に関する話題、Part21です。
http://www.vim.org/

前スレ
Vim Part20
http://toro.2ch.net/test/read.cgi/unix/1322212163/

関連情報は>>2-6あたり。
0788名無しさん@お腹いっぱい。2013/01/10(木) 00:58:55.44
>>778-779
VimのMakefileってちょっと変わってて、普通にconfigureしてmakeすることもできるが、
src/Makefileのコメントに書いてあるように、Makefileの中でconfigureのオプションを指定することもできる。
その場合はmakeだけでconfigureもまとめてやってくれる。
オプションをいじって再度configureからやり直したい場合はmake reconfig
0789名無しさん@お腹いっぱい。2013/01/10(木) 01:19:10.09
柔軟性があって良いな。情報ありがとう。>788
0790名無しさん@お腹いっぱい。2013/01/10(木) 19:27:09.94
cygwinでwinのgvimをパスを通して使っているのですがcygwinからgvimを起動するとcygwinの捜査をgvim
に持っていかれます。
cygwinからgvimをたちあげてもcygwinの操作を継続できるようにしたいのですがどのようにしたらいいでしょうか?
現状はgvim ファイル名 &と起動して急場をしのいでいます
0791名無しさん@お腹いっぱい。2013/01/10(木) 19:44:04.20
gvimを常時起動しておいて
gvim --remote hoge

それから一応winはスレ違い
http://anago.2ch.net/test/read.cgi/software/1314189326/
0792名無しさん@お腹いっぱい。2013/01/10(木) 21:47:10.67
>>775
セミコロン Enter にしてる人ってセミコロンはどこにしてんの?
# ここであんまりひっぱる話題でもないけど
0793名無しさん@お腹いっぱい。2013/01/10(木) 22:01:43.20
<C-m>が<CR>なのにセミコロンをEnterにするメリットはあまり感じないな
0794名無しさん@お腹いっぱい。2013/01/10(木) 22:51:44.86
セミコロンでエンターの元ネタは多分これでしょ。
http://jp.rubyist.net/magazine/?0005-Hotlinks

コーディングの際の使用言語によるから、メリット・デメリットは人それぞれ。
0795名無しさん@お腹いっぱい。2013/01/10(木) 23:27:24.77
>>787
gvimが32bitだったのが原因のようでした。
合わせたら無事動作しました。
ありがとうございます。
0796名無しさん@お腹いっぱい。2013/01/11(金) 07:57:18.08
>>792
コロンにしてる→じゃあコロンはどこ?→カタカナキー
ま さ に 変 態
0797名無しさん@お腹いっぱい。2013/01/11(金) 08:05:17.01
>>796
それならカタカナキーをEnterにしろよ、と誰もが思った
0798名無しさん@お腹いっぱい。2013/01/11(金) 08:34:34.13
自演くせーな
0799名無しさん@お腹いっぱい。2013/01/11(金) 14:15:16.96
>>798
よく分かったな>>1から全部俺なんだよ
0800名無しさん@お腹いっぱい。2013/01/11(金) 14:55:01.97
>>798が自演認定する理由も分かるし
>>799も分かるけど>>797はどういう意図なんだろな
>>797=>>798が自演な場合が一番面白いんだけどな

・・・もうこの話はいいなw
0801名無しさん@お腹いっぱい。2013/01/11(金) 14:58:07.98
次行こ、次。
0802名無しさん@お腹いっぱい。2013/01/11(金) 16:59:46.24
QでExモードにした後の立ち回りでお薦めある?
なかなか使いこなせなくてもったいない。
0803名無しさん@お腹いっぱい。2013/01/15(火) 16:08:14.85
ドット 『.』って
最後の変更を繰り返す。
だけど、最後の変更ってどこからどこまでの範囲?
0804名無しさん@お腹いっぱい。2013/01/15(火) 16:12:24.07
undoで巻き戻る範囲かな?
0805名無しさん@お腹いっぱい。2013/01/17(木) 00:09:42.54
yankring.vim が使えないのですが
nmap の <C-n>を使うとすると以下のエラーが出てしまう。
YR: A register cannot be specified in replace mode
clipboard=unnamed

clipboard=unnamedplus,unnamed
にすればいいらしいのですが
has('unnamedplus')が0です。どうしたら。

もしくは、代わりの良いpluginありますか。
0806名無しさん@お腹いっぱい。2013/01/17(木) 00:32:26.44
>>805
set clipboard=
にはしたくないってことでええんやろか?
0807名無しさん@お腹いっぱい。2013/01/17(木) 12:04:09.42
>>806
できればしたくないです。
0808名無しさん@お腹いっぱい。2013/01/17(木) 14:45:35.09
100行目からある列に縦に01という数字が並んでるのを

01
02
03
04
05
...
10
...

に変えるのに

:'<,'>s/.\+/\=10>line(".") - 99 ? '0' . line(".") - 99 : line(".") - 99/

とやってみましたがもっと簡単な方法はありますか?
0809名無しさん@お腹いっぱい。2013/01/17(木) 16:02:27.14
qq qにマクロ覚え始めさせ
<C-a>のインクリメンタル
j で一個下に降りる
q マクロはここまで。

後は
10@q で 10回上のマクロを発動
0810名無しさん@お腹いっぱい。2013/01/17(木) 16:03:38.14
>>808
状況が分からないけどqでやるとおもう。
yiwjviwp<C-A>とか
0811名無しさん@お腹いっぱい。2013/01/17(木) 16:04:19.16
>>809
それは01が02になって終わりじゃないですかね
08128082013/01/17(木) 17:05:13.55
>>810
これでサクッとできました。勉強になりました。ありがとうございます。
0813名無しさん@お腹いっぱい。2013/01/17(木) 17:57:21.38
>>807
最近入ったこれを削除すれば一応動くけど、他がどうなるかはよくわからん
https://github.com/vim-scripts/YankRing.vim/blob/master/plugin/yankring.vim#L1371
0814名無しさん@お腹いっぱい。2013/01/17(木) 20:11:21.22
>>813
ありがとうございます。無事動くようになりました。
こういうのはやっぱりソースみて、理解して解く感じですかね。
0815名無しさん@お腹いっぱい。2013/01/18(金) 01:14:18.29
>>814
ヘルプみてもわからんやつはソース見るしかないからね。
よーわからんのもあるけども。
でもあんま独自に改造するとオリジナルについていくのが大変になるから、今回のとかは作者に聞いてみるのもいいかもしらん。
0816名無しさん@お腹いっぱい。2013/01/18(金) 12:07:11.28
>>805
作者に聞いたらどうやらバグってるっぽい。
いつでるかわからんけど次のバージョン160では直ってる
0817名無しさん@お腹いっぱい。2013/01/21(月) 18:21:06.48
おすすめアウトライン教えてちょ
0818名無しさん@お腹いっぱい。2013/01/21(月) 22:29:36.34
foldingでいいじゃない ってのがvim流なんじゃなかろうか
0819名無しさん@お腹いっぱい。2013/01/22(火) 21:59:01.50
>>817
いくつかあるみたいだけど自分で使ってないからわかりまへん
とりあえず試してみるのがいんじゃないかね
0820名無しさん@お腹いっぱい。2013/01/23(水) 16:17:56.19
vimfilerで、今あふでやっていることをだいたい出来るようにしてみたけど、
unityが必須っていうのが納得いかないなあ。
普通にあふやbashのselectみたいに、ワンキーでメニュー出してワンキーで実行するのに比べて、
複雑になりキーストロークが多くなるだけで、全く恩恵にあやかる機会が思いつかない。

前に書いた人がいたけど、外部プログラムとの連携が難しい場合があるので、
もう既に2種のプログラム実行はunity通さずに、自分で超シンプルなメニュー書いた。
他の履歴とかブックマークも自作しようと思えばやれるけど、ちょっと不毛すぎるんで悩んでいる。

こんなアホなことやっている人います?
0821名無しさん@お腹いっぱい。2013/01/25(金) 17:17:54.25
vimfilerとかneoなんたらって、日本ではユーザ多そうなのにレスないね…
俺は使ってないのでちょっとわからんのだけど
0822名無しさん@お腹いっぱい。2013/01/25(金) 20:29:30.96
ここにはおっさんしかいないからな
0823名無しさん@お腹いっぱい。2013/01/25(金) 20:45:12.55
せやな。おっさんは基本:Sexやからな
0824名無しさん@お腹いっぱい。2013/01/26(土) 00:27:06.76
>>820
unity って何? unite ?
# vimfiler をしらないので。
0825名無しさん@お腹いっぱい。2013/01/26(土) 01:11:08.78
うぶんちゅのシェルと混同してるのかな>Unity

vimfilerよりvimfmつこうてるから、よくわからんけど
0826名無しさん@お腹いっぱい。2013/01/26(土) 01:13:46.32
>>824
vimfilerがuniteに依存しるとって話なんでしょうな
UnityてUbuntuの例のインタフェースとゲームかなんかのライブラリと名前かぶってるからややこしい

>>820
私は、ctrlpとNERDTreeです
08278202013/01/26(土) 02:01:55.94
>>824>>825
ごめんすごい間違いをしてしまった。×unity○unite

…思ったんだけど、ファイラーに対する考え方が違うのかな。
エディタで使うファイルの管理やロードは、個人的にはエディタの機能で十分なんだけど、
uniteはそこばかり頑張ろうとしている感じ。
エディタやシェルでは不便な、(2画面)ファイラーならではの機能がなかなか便利にしにくい。
(みんなzshとかでやってんのかなあ)

…できればwinとlinuxで同じファイラーを使えるのが理想なんだけど、
Vifmはwinでは描画が遅いし、再描画が少なくて文字が消えたりダブったりして(日本語だけ?)、
とても使えそうな感じではなかった。
08288202013/01/26(土) 02:10:41.30
>>826
ctrlpは知らなかった、シンプルで格好良いね、ありがとう。
ただctrlpもNERDTreeも(:Sexも)、
やはり上で書いた、「エディタで使うファイルの管理やロード」用という面が強いかなあ。
0829名無しさん@お腹いっぱい。2013/01/26(土) 02:19:16.17
>>828
そうそう
それらはファイラではないから俺もファイル操作には使ってなくて
ファイル開いたりするだけやね
ctrlpはextension書けばファイル操作はできるようになると思うけど使いやすいかはわからん
というわけでファイル操作はzshです
0830名無しさん@お腹いっぱい。2013/01/26(土) 13:04:24.04
emacsのdiredはそこそこ便利だからいいのがあればとは思う
0831名無しさん@お腹いっぱい。2013/01/26(土) 13:29:46.16
midnight commander 使えよ
0832名無しさん@お腹いっぱい。2013/01/26(土) 13:43:52.18
unite系はすごいんだけど、ちょっとtoo muchなんだよなあ
ctrlpとかは良いよね
0833名無しさん@お腹いっぱい。2013/01/26(土) 13:51:58.70
fdとかmc使いたがるのはDOS上がりのおっさん
0834名無しさん@お腹いっぱい。2013/01/26(土) 18:11:45.41
uniteやvimfilerは凄いんだけど、
なぜああまでvimscriptにこだわるんだろう。
pythonインターフェイスで書いてくれてれば、世界中の人が感謝してくれただろうに。。
0835名無しさん@お腹いっぱい。2013/01/26(土) 20:13:44.38
vimで、:set nu 相当のコマンドラインオプションってない?
起動していつも :set nu と入力するのがだるい。
ただしサーバ管理者なので、vimの設定ファイルに書き足す方法はできれば避けたい。
0836名無しさん@お腹いっぱい。2013/01/26(土) 21:03:20.74
alias vim='vim "+set nu"'
0837名無しさん@お腹いっぱい。2013/01/26(土) 21:10:10.01
サーバ管理者だからvimrcに書き足さないって考えがわからない
0838名無しさん@お腹いっぱい。2013/01/26(土) 21:18:53.97
ただのユーザーの俺でさえ、
.vimrc使えと思うんだから、
管理者だったら尚更だろうな。
0839名無しさん@お腹いっぱい。2013/01/26(土) 22:12:05.40
sodoeditなんか使うだろ普通
0840名無しさん@お腹いっぱい。2013/01/27(日) 00:18:48.57
未だ嘗てサーバ管理のできるサーバ管理者を見たことがない。
0841名無しさん@お腹いっぱい。2013/01/27(日) 00:31:24.01
まあ閑職のイメージだな
0842名無しさん@お腹いっぱい。2013/01/27(日) 00:43:08.59
>>835
個人のホームディレクトリが無いってことなのかね
vim -nu とかそういうのはないので、一切の設定ファイルをいじらずに楽にやるなら
ターミナルの設定等で、:se nu<Cr> を送出するショートカットを設定するとかかな
ちょっともうスレ知感満載
0843名無しさん@お腹いっぱい。2013/01/27(日) 04:42:26.49
>>835
共通の設定に書きさえしなければ他のユーザには影響を与えないけど、そういう話ではないの?
0844名無しさん@お腹いっぱい。2013/01/27(日) 05:25:57.94
> pythonインターフェイスで書いてくれてれば、世界中の人が感謝してくれただろうに。。

>>834
何故?
0845名無しさん@お腹いっぱい。2013/01/27(日) 05:49:47.89
たぶん感謝するのは>>834だけだなw
閉じて安定している環境に余計な外部拡張を持ち込むのは
大概のユーザーには迷惑な話。
0846834でないが2013/01/27(日) 09:08:47.59
pythonでなけりゃe-lispでもいいなあ。
0847名無しさん@お腹いっぱい。2013/01/27(日) 16:41:05.35
pythonのほうがメジャーだし書きやすい人が多いけど
uniteに限ったことではなくvim全体に言えることだな
要望ランキングでpythonがトップという話もあったな
0848名無しさん@お腹いっぱい。2013/01/27(日) 18:55:55.51
unite の要 vimproc 機能とか Python Interface じゃだめなんだろうかってのはちょっと思うな。
# vimproc を把握してないので適当いってるけど。
vimproc の方が小さい気はするけど、vim 本体と別に compile が必要ってのが難。

# python である必要はないけど Interface の中で最大勢力(?)が python みたいだからなあ。
# 個人的には python より別の方がいいかな。
0849名無しさん@お腹いっぱい。2013/01/27(日) 20:27:43.27
これやな
ttp://www.vim.org/sponsor/vote_results.php
0850名無しさん@お腹いっぱい。2013/01/27(日) 20:50:36.59
vimscriptがイマイチなのは確かだが慣れたし、pythonまではいらないかな
shellとgdbのインターフェイスの要望が多いのはemacsにあこがれてんのか
0851名無しさん@お腹いっぱい。2013/01/27(日) 21:03:30.81
Pythonインターフェイスのスクリプトが増えても
大多数の人はいじらなくて改造・更新をする層は変わらんと思う
0852名無しさん@お腹いっぱい。2013/01/27(日) 22:38:22.58
具体的に何を強化してほしいんだろうね。
やるなら python に限らなくてもいいよね。COM みたいに。
今は基本的に eval を通すのかねえ。
0853名無しさん@お腹いっぱい。2013/01/27(日) 22:48:25.87
Vim内部にがっつりPythonを統合してほしいじゃないのかね。どういうカタチかはわからんが
いまは text_width = vim.eval("&tw") とか str = vim.eval("12+12") みたいなことになってるから
0854名無しさん@お腹いっぱい。2013/01/27(日) 23:34:12.53
.vimrcやコマンドラインもpythonにしたい?
0855名無しさん@お腹いっぱい。2013/01/27(日) 23:38:35.18
私はVim script派ですのでしたくないです
0856名無しさん@お腹いっぱい。2013/01/27(日) 23:38:40.13
Python 使いは、Vim からはなれて、
Pythonで拡張できる vi モドキを作ればいいのに
0857名無しさん@お腹いっぱい。2013/01/28(月) 01:27:08.55
>>855
Shougo乙
0858名無しさん@お腹いっぱい。2013/01/28(月) 22:17:10.87
clingなんかのC++インタプリタ組み込んだほうが色々捗るかもしれない
0859名無しさん@お腹いっぱい。2013/01/28(月) 22:27:36.72
メジャーバージョンアップ版って突然Bram氏から
どーんと出てくるんだろVimって

あれこれ予想して気を揉んでもしょうがない
0860名無しさん@お腹いっぱい。2013/01/28(月) 22:34:32.43
突然の開発打ち切り
0861名無しさん@お腹いっぱい。2013/01/29(火) 00:47:41.85
ソースがカオスなんだっけ
後継の話とか無いのかねえ
0862名無しさん@お腹いっぱい。2013/01/29(火) 01:26:24.24
ソースがカオスかつBramしかコミット権がないとかだったような
パッチはBramを説得して取り込んでもらわんといかん。みたいな
なんか似たようなのとかたまに登場する印象だけど、現行のVimと同等かそれ以上の機能を実装するのは相当大変だろうから
なかなかやろうって人おらんのかも

Vim8いつかなwktk
0863名無しさん@お腹いっぱい。2013/01/29(火) 06:24:40.26
elispも嫌がる人が多かったけどemacsもあのままだしpython組み込みはない
ここにpythonで作ったvi風の何かがあるからpython好きの人が集まってvim追いかけたらいい
http://code.google.com/p/pyvi/
0864名無しさん@お腹いっぱい。2013/01/31(木) 20:45:50.47
Windowsで作成されたテキストファイルを開くも文字化け.
Vimで解決しようにも無理で諦めてiconv使うも撃沈.
然らばgeditによって無事に解決...

文字コードの取扱いが面倒だよね,vimってさ・・・
0865名無しさん@お腹いっぱい。2013/01/31(木) 20:49:55.61
:e! ++enc=ucs-2le
:e! ++enc=cp932
このどっちかで大抵どうにかなるような
0866名無しさん@お腹いっぱい。2013/01/31(木) 20:53:00.27
let fuga = 0

if exists("")
let hoge = 0
endif

1行目のlet fuga = 0をyyしてifの下にpしても
自動でインデントされないのだが、設定どこ?
それとも、YankRing.vim が悪さしてんのかな
0867名無しさん@お腹いっぱい。2013/01/31(木) 21:14:14.45
>>866
なんやろな…わからんわ。エスパーが登場するまでこれで
nnoremap <silent> p p`[v`]=
0868名無しさん@お腹いっぱい。2013/01/31(木) 21:28:31.87
>>866
そもそもyypで自動インデントなんてされないっしょ?
行単位コピーなんだからさ
0869名無しさん@お腹いっぱい。2013/01/31(木) 22:31:29.11
Windowsで作ったファイルのエンコード変換で困ったのは
SJISとCP932の違いで化けて困ったことがあったな
set fileencodingsに設定する順番をCP932,SJISにしたら直った覚えがある
0870名無しさん@お腹いっぱい。2013/01/31(木) 22:45:57.83
そういえば,
set encとe! ++encって何が違うんだっけ?
0871名無しさん@お腹いっぱい。2013/01/31(木) 23:07:23.17
encとfenc
0872名無しさん@お腹いっぱい。2013/01/31(木) 23:09:07.23
>>870
RTFMつうわけで
:h 'enc'
:h ++enc
0873名無しさん@お腹いっぱい。2013/02/01(金) 19:43:51.39
>>867
とりあえずこれ使わせてもらいます。

>>868
そうなんですか?
なんか前までされてた気がしたので
0874名無しさん@お腹いっぱい。2013/02/03(日) 05:29:57.66
Vimってファイル名補完してるときの候補選択ってどのキー押せば良いの?
C-m 押すとファイラーになっちゃう・・・
0875名無しさん@お腹いっぱい。2013/02/03(日) 05:31:23.78
↑わかりにくくてごめん

ファイル名補完時の途中でのディレクトリ選択時の事ね。
0876名無しさん@お腹いっぱい。2013/02/03(日) 05:49:05.48
以前このスレでC-iで選ぶっていわれたんだが
wildmenuだとくるくる回るからカーソル下で選ぶんだけど
ホームポジションから手を離さないためには
スペース、バックスペースを使ってる
本当はどうするのが正解か分からん
0877名無しさん@お腹いっぱい。2013/02/03(日) 07:47:13.92
>>876
レスありがと

私も C-i で選んでて、「このディレクトリを選択するには?」となり
BackSpaceで済ませてますが、なんか無駄な気がしてて
正しいキーがあるなら知りたいなと・・・
0878名無しさん@お腹いっぱい。2013/02/03(日) 16:35:41.18
<C-D>か<C-E>か<C-L>あたり?
0879名無しさん@お腹いっぱい。2013/02/03(日) 17:50:35.49
// ってなるのを気にしなければ / とか。あと ?, * でもまあ続けて補完すれば同じかな。
↑ の <C-D> でも list 表示を気にしなければいいよね。
でも余計な作用なしでってことなら
:h 'wildmenu' の例(↓)をみるに <Space><BS> に cnoremap するのが妥当じゃないかな。
# a<BS> の方が短いけど。
まあ >>876 が結論ってことで。

:cnoremap <Left> <Space><BS><Left>
:cnoremap <Right> <Space><BS><Right>
0880名無しさん@お腹いっぱい。2013/02/03(日) 23:59:52.72
>>874
あー、そういうことか
俺は / 押して /home/foo// みたいな状態にしてから更に<C-i>してる
0881名無しさん@お腹いっぱい。2013/02/10(日) 16:00:33.34
質問です
Vimの補完機能使うとだーって候補が出るじゃないですか
その候補から「/」の検索でわーって絞り込みたいんです
出来ますの?勿論ググりましたが、当方馬鹿なのでわかりません
サルでも分かるような回答を強く期待します
僕はこういう小バカにしたような書き方しか出来ませんが、凄く切実に知りたいです
さぁどうぞ↓
0882名無しさん@お腹いっぱい。2013/02/10(日) 16:07:57.34
そんなことよりさ、今日スーパーでお寿司買ってきたんだよwww
そしたらさwww賞味期限切れでさwww
時すでにお寿司ってなwww
やかましいわwww
0883名無しさん@お腹いっぱい。2013/02/10(日) 17:01:53.12
>>881
あなたの仰っていることは恐らく出来ません
しかし、候補を絞り込むことはneocomplcacheなら
補完が出てきた後、一文字ずつ入力することで絞り込みがされます
0884名無しさん@お腹いっぱい。2013/02/10(日) 18:28:51.23
補完()
0885名無しさん@お腹いっぱい。2013/02/10(日) 19:33:50.40
ご回答ありがとうございます
頭から補完されてくのではちょっとめんどいのです。
行補完がメインなので、該当するのをぱっと取り出す手品みたいのがいいのです
0886名無しさん@お腹いっぱい。2013/02/10(日) 21:12:24.94
Vim-users.jp - Hack #40: 不可視文字を表示する
http://vim-users.jp/2009/07/hack40/
Vim-users.jp - Hack #74: 簡単にvimrcを編集する
http://vim-users.jp/2009/09/hack74/

ココらへんをみてるんだが、augroupがよくわからない…翻訳ドキュメント読んだけどさっぱりだ。
これってなんのためにあって何の役割を果たしてるの?
0887名無しさん@お腹いっぱい。2013/02/10(日) 23:28:40.16
>>886
特定のグループに入っているautocmdを一括で無効化したり、初期化して再定義したりできるようになる
■ このスレッドは過去ログ倉庫に格納されています