トップページunix
984コメント289KB

Vim Part25 [転載禁止]©5ch.net

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2015/03/30(月) 20:04:42.55
Vim 6以降に関する話題、Part24です。
http://www.vim.org/

前スレ
Vim Part24
http://peace.2ch.net/test/read.cgi/unix/1413122189/

関連情報は>>2-6あたり
0189名無しさん@お腹いっぱい。2015/05/12(火) 21:55:38.39
vimgrep a.txt b.txt
これで起動した時に左右にファイルの差分が表示されますが
このままvimgrepのモードを解除して左右に分割されたままファイルを編集作業に入りたいので
解除方法を教えてください
0190名無しさん@お腹いっぱい。2015/05/13(水) 19:24:16.30
>>189
:diffoff!
http://vim-jp.org/vimdoc-ja/diff.html#:diffoff
vimgrep じゃなくて vimdiff ね
0191名無しさん@お腹いっぱい。2015/05/13(水) 23:15:32.59
>>190
解除できましたありがとうございます
0192名無しさん@お腹いっぱい。2015/05/15(金) 10:13:46.58
vim-commentaryってプラグインを使ってるんですが
autocmd FileType php set commentstring=#\ %s
filetype plugin indent on
これだとcommentstringの値を上書きできなくて、行を逆にすると上書き出来ました
filetype plugin indent on
autocmd FileType php set commentstring=#\ %s

なぜfiletype plugin indent onの後に書かないと上書きできないんですか?
0193名無しさん@お腹いっぱい。2015/05/15(金) 12:31:32.31
>>192
filetype plugin indent onの行でファイルタイプの判定を有効にしてからじゃないと、
FileTypeのイベントが発行イベントがしないんでしょ。
0194名無しさん@お腹いっぱい。2015/05/15(金) 12:36:11.59
途中で書き込んじゃったから書き直すわ。
>>192
filetype plugin indent onの行でファイルタイプの判定を有効にしてからじゃないと、
FileTypeのイベントが起きないから、autocmdが実行されないんでしょ。
0195名無しさん@お腹いっぱい。2015/05/15(金) 14:16:18.80
>>193-194
ということはfiletype plugin indent onより前のautocmdは無意味なのか検証してみました

autocmd FileType php setlocal tabstop=1 shiftwidth=1 softtabstop=1
autocmd FileType php set commentstring=#\ %s
filetype plugin indent on

インデントは1になりましたがcommentstringだけは上書きされません
0196名無しさん@お腹いっぱい。2015/05/15(金) 15:35:27.35
>>195
失礼。filetype plugin indent onの前でもFiletypeイベントは起きてるみたいだ。

時間がないので細かいことは調べられなかったけど、filetype plugin indent onをすると、
filetypeが決まる時にphp用のftpluginが呼ばれ、そこでcommentstringが上書きされてる。
tabstopなどはphp用ftpluginの中で記述されてないので、設定がそのまま残ってる。

ここら辺の設定の順番は俺じゃわからないから、誰か知ってる人がいたら教えて。
0197名無しさん@お腹いっぱい。2015/05/16(土) 16:02:28.06
ここの`https://github.com/vim-jp/vimdoc-ja/blob/master/doc/filetype.jax'
`ftplugin-overrule'の項目によると$HOMEで書換える方法でも良いんじゃないかな。
がっつり単純に
setlocal commentstring=/*%s*/
って書いてあるし。

他にも`filetype-plugin-off'の項目によると、『ファイル形式の検出自体は無効にならない。』
とか書いてある。
0198名無しさん@お腹いっぱい。2015/05/16(土) 16:09:52.58
ん、板のtopとスレッドの中で`'の扱いが違う。
0199名無しさん@お腹いっぱい。2015/05/16(土) 23:18:17.45
>>196-198
解説ありがとうございます。
この領域の内容は難しすぎて僕にはついけいけないようです。
0200名無しさん@お腹いっぱい。2015/05/17(日) 02:56:03.15
うそーん。絶対あなたのほうが詳しいと思う。
packageを作った人によって多少の名前の違いはあるかもしれないけどそこは勘で分ると思います。
例えばvimのversionが7.3だっとして/usrにinstallされていたら
/usr/share/vim73/ftplugin というdirectoryの中に「php.vim」と「html.vim」というfileが
あるからそれを$HOME/.vim/ftplugin というdirectoryを作ってその中に複製して入れる。
その複製したphp.vim fileの中に
setlocal commentstring=/*%s*/
という場所が下の方にあるから、その上と下に分を付け足して最終的に以下のようにします。
if ! did_filetype ()
setlocal commentstring=/*%s*/
endif
その複製したhtml.vim fileの中に
setlocal commentstring=<!--%s-->
という場所が上の方にあるから、その上と下に分を付け足して最終的に以下のようにします。
if ! did_filetype ()
setlocal commentstring=<!--%s-->
endif
一応これで以下の設定で動いています。何となくsetlocalにしときました。
autocmd FileType php setlocal commentstring=#\ %s
filetype plugin indent on
0201名無しさん@お腹いっぱい。2015/05/17(日) 03:26:03.08
ごめんそっかそっか、上の方法だと他にも何か設定してる時に悪影響あったりしそうな感じもする。
一番簡単なのはphp.vimのfileのsetlocalの値を書換えるだけなのだけれども。
その時はそうするか、偉い人のアドバイスを待って。寝ます。
0202名無しさん@お腹いっぱい。2015/05/21(木) 12:17:43.59
既に開いたファイルと差分を取る方法を教えてください
0203名無しさん@お腹いっぱい。2015/05/21(木) 13:17:21.46
>>202
:h :diffsplit
0204名無しさん@お腹いっぱい。2015/05/21(木) 13:45:12.45
vi並の低機能サクサクvimをビルドしようとするとどれくらい近くなるの?
やったことあるひといる?
0205名無しさん@お腹いっぱい。2015/05/21(木) 14:49:02.84
>>204
その行為に意味があると思えない
viが使いたければviを入れれば済むし
0206名無しさん@お腹いっぱい。2015/05/21(木) 15:42:52.83
あるソフトからvim呼び出すときスワップ作りたくないんでgvim --noswapfile -"%f"って書いたんだけど"未知のオプション引数です"と言われます
とりあえず開いてから:set noswapfileってすれば効くみたいなんだけど……なんででしょ

>>204
vim-tinyでもあかんのかね?
0207名無しさん@お腹いっぱい。2015/05/21(木) 15:49:37.08
マッピングされているキー一覧を取得する方法ありませんか?
0208名無しさん@お腹いっぱい。2015/05/21(木) 18:02:18.06
>>206
:h -vim
:h -c

gvim +"set noswapfile" 〜
0209名無しさん@お腹いっぱい。2015/05/21(木) 18:20:21.24
>>207
普通に :map とか?

:h :map_l
してジャンプした先の上15行を読んでみて
0210名無しさん@お腹いっぱい。2015/05/21(木) 21:29:26.69
久し振りにWin系のエディタ触ったら操作完璧に忘れてた
一文字後ろ削除ってなんだっけ?とx押したら行切り取りされて更にビビった
0211名無しさん@お腹いっぱい。2015/05/22(金) 09:31:56.85
autocmd FileType
\ a,b,c,d,e,f,g,h,i,vim,python,ruby,cpp,html

1文字と特定のファイルタイプだけ色がつくんですがなぜですか?
cppとかhtmlは色はついてません
0212名無しさん@お腹いっぱい。2015/05/22(金) 10:28:31.38
4行のvimrc

filetype plugin indent on
set list
colorscheme blue
autocmd FileType javascript setlocal nolist

javascriptのファイルを開いてタブ文字を入れて
:sources ~/.vimrc
こうするとautocmdのnolistが効いてないんですがどうしてですか?
0213名無しさん@お腹いっぱい。2015/05/22(金) 11:06:58.93
>>212
autocmd FileType はバッファに読み込んだファイルの filetype が設定された時に実行されるコマンドだからじゃない?

:source ~/.vimrc を読み込んでも、元々バッファに読み込んであった javascript ファイルはそのままだから、filetype を再設定しないんじゃないかな。
0214名無しさん@お腹いっぱい。2015/05/22(金) 23:55:02.32
http://vim-jp.org/vimdoc-ja/autocmd.html#autocmd-events
vim歴浅いからよくわからないんですけど
|SourcePre| Vimスクリプトを読み込む前
|SourceCmd| Vimスクリプトを読み込む前 |Cmd-event|
これってどっちも同じ機能ってことですか?それともtypoですか?
0215名無しさん@お腹いっぱい。2015/05/23(土) 06:22:27.58
>>211
それを一行にまとめて書く(バックスラッシュ除く)と、a 以降まったく色がつかない
その部分に色がつくことは本来は無いようだ

だがバックスラッシュで行継続すると
Vimはそれが「"FileType" に続く内容」であると認識できず、別の構文と解釈して色をつけてしまう

具体的にはExコマンドとみなして色付けしている模様
a (appendの略)、b (bufferの略)、c (changeの略)……
また python や ruby もコマンドとして存在する(:h :python 及び :h :ruby 参照)
けど cpp や html という名前のコマンドは存在しないからそれらには色がついていない、という事みたい
02162122015/05/24(日) 21:02:29.72
>>213
autocmd SourcePre * setlocal nolistでsource vimrc時にnolistが効きました。

ただ拡張子を*にしているので*.js以外もnolistになります。
autocmd SourcePre *.js setlocal nolistと書いてもイベントが発火しません
"*.js"と囲ってもダメでした
どこか間違っているところをご指摘おねがいします。
0217名無しさん@お腹いっぱい。2015/05/24(日) 22:31:35.55
>>216
autocmd SourcePre *.js setlocal nolist は source するファイルが vim の設定ファイルじゃないからかな
0218名無しさん@お腹いっぱい。2015/05/25(月) 00:36:38.25
>>216
それをやるなら普通は
au BufRead,BufNewFile *.js setl nolist
とかこんな感じ
02192122015/05/25(月) 01:30:41.52
>>217
最初に戻ってFileTypeイベントを使って目指できるようにダイアログを表示してみました
autocmd FileType javascript :!zenity --info
これを書くと、ファイル開いた時とsource ~/.vimrcしたとき両方ともダイアログが表示されました
イベントは発火されていました。
ってことはautocmd FileType javascript setlocal nolistでも発火しているはずなんですが、
setlocalが効いてないのがどうしてなのかわかりません。

>>218
:source ~/.vimrcした時にイベントが発火しませんでした
02202122015/05/25(月) 01:31:39.65
訂正
最初に戻ってFileTypeイベントを使って目指できるようにダイアログを表示してみました

最初に戻ってFileTypeイベントを使って目視できるようにダイアログを表示してみました
0221名無しさん@お腹いっぱい。2015/05/25(月) 02:46:59.27
>>219
こういうことけ?
jsのとき setl nolistしたい
js編集中にso .vimrcした場合setl nolistが解除されないようにしたい
:verb se nolistして最後にオプションが設定された場所みてみた?
0222名無しさん@お腹いっぱい。2015/05/25(月) 14:21:30.52
深入りしないで答えるとjslintとかいうのが悪さをしてそうだ。
02232122015/05/25(月) 22:36:10.55
>>221
サンプルのためnolistを使っているだけです。
autocmd FileType javascript setlocal {old}を
autocmd FileType javascript setlocal {new}に変更した後にsource ~/.vimrcしても{new}が反映されてないので反映されるようにしたいのです
ファイルを開いた直後は{old}が効いてますが、vimrcを編集して{old}を{new}に書き換えてvimrcを再読込しても{new}が反映されないんです
:verb se nolistしても何も表示されませんでした

>>222
この4行しか書いてないです
filetype plugin indent on
set list
colorscheme blue
autocmd FileType javascript setlocal nolist
0224名無しさん@お腹いっぱい。2015/05/26(火) 00:03:31.01
本当に>>219それ動いたのかな。何処かで勘違いしてないかな。
下記のfileを作って起動して、読みこみ直してもイベントは鎮火されてるよ。
一番下のcomemntを外すとそういう事はできるけれど、
私は>>213が正しいような気がするけれど、しかし私は詳しくないので偉い人頼んだ。
filetype plugin indent on
set list
colorscheme blue
autocmd FileType javascript :r!pwd
"edit
0225名無しさん@お腹いっぱい。2015/05/26(火) 04:40:52.76
以下のfileを作って起動するじゃん。
filetype plugin indent on
autocmd FileType javascript call append ('.', 'test')

そこで以下のどっちらかを打ち込むと打ち込むたびにtestが書き込まれていく。
setlocal filetype=javascript
setfiletype javascript
じゃあ上記のfileにそれをつけたせばと思ってsourceするとどうなるかというと
sourceするたびにtestを書き込む数が増えていってしまう。
その値を初期化できれば完成なんじゃない。
0226名無しさん@お腹いっぱい。2015/05/26(火) 08:37:00.58
>>223
少なくとも普通はこんな感じにする
aug Foo
au!
au FileType javascript setl nolist
aug END
こうしないとvimrc読み込むたびにauが増えていく
0227名無しさん@お腹いっぱい。2015/05/26(火) 12:59:39.80
そっかそういう事かautocmd FileTypeで中身を見たら一目瞭然でした。
横槍ですが、おかげさまでまた一つ知識が増えました。ありがとうございます。
どうやら人気がありそうな以下の二つの言語で試すと、以下のようにするとできるようです。

filetype plugin indent on
autocmd FileType php call append ('.', 'ririnrin')
augroup foo
autocmd!
autocmd FileType javascript call append ('.', 'rurunrun')
setlocal filetype=javascript
"setfiletype javascript
augroup end
0228名無しさん@お腹いっぱい。2015/05/26(火) 13:43:41.39
ごめん上記は嘘。
0229名無しさん@お腹いっぱい。2015/05/26(火) 13:55:06.54
"こうかな。
filetype plugin indent on
autocmd FileType php call append ('.', 'ririnrin')
augroup foo
autocmd!
autocmd FileType javascript call append ('.', 'rurunrun')
augroup end
if &filetype == 'javascript'
setlocal filetype=javascript
endif
0230名無しさん@お腹いっぱい。2015/05/26(火) 14:11:35.21
ごめん上記もまた嘘である。
0231名無しさん@お腹いっぱい。2015/05/26(火) 14:35:33.86
"他のtabに移った時にfiletypeの値が消えちゃうのね。
"これではどうだろ。また何か見落としてるかな。

filetype plugin indent on
autocmd FileType php call append ('.', 'ririnrin')
augroup foo
autocmd!
autocmd FileType javascript call append ('.', 'rurunrun') |let b:filetype_js = 1
augroup end
if exists ('b:filetype_js')
setlocal filetype=javascript
endif
0232隼人新聞社2015/05/26(火) 16:30:44.21
スレによっては国賊で創価員の工作員スパイが暗躍してみんさんを洗脳しようとしています。注意

こんなにある、創価員による破壊的狂気的犯行の数々。実際には新聞TVにのらないだけでもっとある!次はあなたの番だ

●宅間守(在日部落)→大阪 附属池田小学校児童殺傷 。大量殺人犯 創価学会員の犯行 両親も創価学会員
 8人殺害 15人を殺傷。 朝鮮人部落出身。
●斉藤勇太→JR取手駅前バス無差別殺傷通り魔事件(取手バスジャック)  創価学会員の犯行
「通勤、通学客で混雑するバスの中で手加減せず無差別に襲っており、社会に大きな不安や衝撃を与えた結果は重大だ」 
●酒鬼薔薇聖斗→ 東慎一郎(在日)神戸の首切り魔で酒鬼薔薇聖斗 神戸の首切り魔。生首を校門に飾る。2人殺害。創価学会員の犯行 大量殺人犯
●福田孝行(在日)→山口県母子強姦殺害 殺害後屍姦、乳児も殺害 大量殺人犯 創価学会員の犯行。裁判では屍姦は
生き返らせるための(創価流の)儀式だと供述  死刑判決
● 大芦明 →2011年 11月5日 大阪府堺市中区 隣人二名殺害事件。創価学会員の犯行 無期懲役
●八木茂 →埼玉・保険金殺人事件犯人 2名殺害(平成12年)死刑判決 創価学会員の犯行
●武まゆみ→、埼玉・保険金殺人事件犯人 2名殺害(平成12年)無期懲役 創価学会員の犯行
●森田考子→埼玉・保険金殺人事件犯人 2名殺害(平成12年)共犯者で懲役13〜15年の判決 創価学会員の犯行 
●柏市連続通り魔殺傷事件X強盗殺人 創価学会員の犯行の犯行
●引寺利明 →マツダ宇品工場ファミリア暴走連続殺傷事件 引き殺しで1人死亡、11人を殺傷  創価学会員の犯行
●織原城二(金聖鐘) → ルーシー・ブラックマンさん事件 創価学会員の犯行 10人の女性に強姦又は強制わいせつ 内2人の女性が死亡
●山口芳寛 →熊本3才女児遺棄事件。レイプ 創価学会員の犯行。幼女に熱い視線、女児が大好き 強姦殺人無期懲役
●内柴正人→柔道金メダリスト(連続)強姦事件 (2009.5.15付 聖教新聞) 創価学会員の犯行
●アクリフーズ毒入り大量殺人事件 創価学会員の犯行
●リサイクルショップエース大量殺人事件 連続殺人!5人以上を殺して埋める 創価学会員の犯行
0233名無しさん@お腹いっぱい。2015/05/26(火) 22:01:44.62
>>231
他のタブに移ったらと言うか、他のタブは別のバッファだからftが違うだけじゃね?
FileType は local to buffer のはず
0234名無しさん@お腹いっぱい。2015/05/27(水) 12:30:01.89
vimrcリロードでautocmd FileType・・・が効かないの知らなかった
0235名無しさん@お腹いっぱい。2015/05/27(水) 21:55:41.34
>>234
autocmd はイベント時のコマンドを登録するだけだから呼び出しても基本何も発生せんのよ
0236名無しさん@お腹いっぱい。2015/05/31(日) 12:57:04.36
vim scriptの行継続のためのバックスラッシュを挿入する際、いくつスペースをいれるかを決定するオプションがあった気がするのですが名前がわかりません。
なんというオプションだったか教えてください
0237名無しさん@お腹いっぱい。2015/06/01(月) 16:20:58.33
vimrcにこの2行だけ書きました
filetype plugin indent on
syntax enable

vim test.phpでファイルを開いてtest.phpに次のHTMLを書きます
<ul>
<li><a href=""></a></li>
<li><a href=""></a></li>
</ul>

そのあと2行目のhref=""の=の次の文字の所にカーソルを持っていきます。
ここでCTRL+vを押してj押してShift+aを押してダブルクォーテーション内を複数行変数できる状態にします。
<?と打ってEscを押してください。
複数行開始行にのみ文字列が挿入されてインデントが崩れます。
これはなぜですか?
02382372015/06/01(月) 16:22:42.88
あ。。半角スペースが消えてしまった
@を半角スペースに置き換えてください。
<ul>
@@@@<li><a href=""></a></li>
@@@@<li><a href=""></a></li>
</ul>
ここでは半角スペース4つ置いてますが1つ以上で再現しました
02392372015/06/01(月) 16:23:50.45
&#9747;複数行変数
○複数行編集
0240名無しさん@お腹いっぱい。2015/06/02(火) 23:07:21.61
vimに慣れてきたらWindowsのテキストエディタでC-f誤爆して困る
0241名無しさん@お腹いっぱい。2015/06/03(水) 00:19:22.89
WindowsでもVimを使いなさい
0242名無しさん@お腹いっぱい。2015/06/03(水) 10:00:26.71
Windows用に作られたgvimか
cygwinの上で走らせるvimだな

gitなどと連携のしやすさなどに差がある
0243名無しさん@お腹いっぱい。2015/06/04(木) 20:11:39.17
ctrl+w vでウィンドウが分かれますがバッファは同じですよね
これを別の空のバッファとして右にウィンドウを表示する方法教えてください

毎回ctrl+w vしたあとctrl+wを2回して:e memo.txtして、vimを終了後にrm memo.txtしてます
用途は、一時的にメモしたいことを書き留めることに使いたいんです
0244名無しさん@お腹いっぱい。2015/06/04(木) 20:44:07.00
>>243
:vnew memo.txt じゃあかんの?
0245名無しさん@お腹いっぱい。2015/06/04(木) 20:45:32.30
>>243
:set splitright
:vnew
でどうだろう。
0246名無しさん@お腹いっぱい。2015/06/04(木) 21:33:56.35
>>244-245
:vnewで実現しました
ありがとうございます
下に出したいときは:newというのも分かりました
0247名無しさん@お腹いっぱい。2015/06/04(木) 22:12:05.47
>>246
:new は上に出るよ。
下に出したきゃ :botright new
0248名無しさん@お腹いっぱい。2015/06/04(木) 22:18:20.57
:new は splitbelow 見てんじゃないっけ
0249名無しさん@お腹いっぱい。2015/06/05(金) 11:47:34.46
wget http://php.net/manual/ja/indexes.functions.php -O - | vim -

不正な文字が含まれててUTF-8として開けないんですがUTF-8として読む方法ありませんか?
0250名無しさん@お腹いっぱい。2015/06/06(土) 22:36:30.46
有名な標準的なコマンドだと思ってたけど実はviにはなかったっていうのなんかあります?
0251名無しさん@お腹いっぱい。2015/06/06(土) 22:43:36.29
コマンドではないが%かな
つかviほとんど使ったことないからよく知らない
0252名無しさん@お腹いっぱい。2015/06/07(日) 12:44:27.44
vimに元から入っているphpcomplete.vimってどうやって使うんですか?
<C-x><C-u>押しても補完されないしset completefunc=phpcomplete#CompletePHPしても補完されません
0253名無しさん@お腹いっぱい。2015/06/07(日) 13:53:04.05
>>252
completefunc じゃなくて ofu にその関数名セットして <c-x><c-o>
0254名無しさん@お腹いっぱい。2015/06/07(日) 14:02:03.67
でましたありがとう
0255名無しさん@お腹いっぱい。2015/06/07(日) 17:22:34.77
python,lua,rubyを使わないで変数に標準出力の内容を代入ってどうやりますか?
例えばdateやlsの結果をlet aに入れたい場合
0256名無しさん@お腹いっぱい。2015/06/07(日) 17:59:14.68
>>249
wget http://php.net/manual/ja/indexes.functions.php -O - | nkf -Ww | vim -

>>255
let a=system('date')
0257名無しさん@お腹いっぱい。2015/06/08(月) 01:01:21.24
>>256
あざっす
0258名無しさん@お腹いっぱい。2015/06/08(月) 07:13:25.89
wget http://php.net/manual/ja/indexes.functions.php -O - | vim -b -

バイナリモード
これならUTF-8として不正なバイトも捨てずに済む
0259名無しさん@お腹いっぱい。2015/06/08(月) 07:45:17.48
>>236 :h ft-vim-indentのg:vim_indent_cont?
0260名無しさん@お腹いっぱい。2015/06/08(月) 10:11:43.31
>>249
nkfとかバイナリモードとか必要ないよ
utf-8って分かってるならエンコードをutf-8に固定してあげればいい

wget http://php.net/manual/ja/indexes.functions.php -O - | vim - --cmd "set fencs=utf-8"
02612582015/06/08(月) 14:33:21.65
>>260でも化けるのは何でだろう……と、ようやく原因が分かった。

vimrc で fileencodings (fencs) のリストに iso-8859-1 (latin1) を含めていたせい。
fencs の末尾から iso-8859-1 を取除いたら化けなくなった。

UTF-8 として不正な文字を含む「ほぼUTF-8テキスト」を
 1 UTF-8 としてテスト → エラーあり
 2 ISO-8859-1 としてテスト → エラーなし
 3 よってこのファイルは ISO-8859-1 だな間違いない
となっていた模様。

--cmd は vimrc の設定を上書きできない(--cmd の実行後に vimrc が読まれる)ので
vimrc に set fencs+=latin1 等と書かれている場合は結局化ける。
逆に fencs に utf-8 があって且つ latin1 が無ければ、--cmd で指定しなくても化けずに開ける。
0262名無しさん@お腹いっぱい。2015/06/09(火) 07:41:04.00
--cmd "autocmd StdinReadPre * set fencs=utf-8"
0263名無しさん@お腹いっぱい。2015/06/10(水) 16:23:02.30
&#65533;が何の文字なのかさっぱり
phperはこんな文字を仕込むのか、はたまた不正に書き換えられたものなのか
0264名無しさん@お腹いっぱい。2015/06/10(水) 17:28:46.17
>>249
このurlが返すhtmlの277行目だかに U+00e3 があってそれがVimで変換エラーになるっぽいな
でも<c-v>ue3 するとそれらしき文字が入力される謎
0265名無しさん@お腹いっぱい。2015/06/16(火) 01:38:20.61
ttoc.vimについてなんですが、
TLet g:ttoc_rx_txt = '^[#2字下げ].*[#「.*」は.見出し]$|^▼\+ .*$'
これ無視されてしまうんですが正規表現間違ってます?
TLet g:ttoc_rx_txt = '^[#2字下げ].*[#「.*」は.見出し]$'
TLet g:ttoc_rx_txt = '^▼\+ .*'
というように分ければ読んでくれるんですが一行に纏めないと上の方に書かれてる行しか読んでくれないもので。両立したいです
他のデフォルトで入ってる拡張子用のは|使って一行に纏められてるんですが……
0266名無しさん@お腹いっぱい。2015/06/16(火) 05:49:46.79
>>265
\|
0267名無しさん@お腹いっぱい。2015/06/16(火) 17:20:41.57
>>266
それです!出来ました!ありがとうございました!
すみません、よく見てませんでしたorz
0268名無しさん@お腹いっぱい。2015/06/16(火) 22:15:47.71
:e でファイル名のないウィンドウを編集する方法ってありますか?
普段:tabeを使ってるんですけどタブを使わないで:b 1みたいにして切り替える方法に慣れようと思いまして。
一時的なメモにするのでファイルに保存する必要もないです
0269名無しさん@お腹いっぱい。2015/06/16(火) 22:39:49.60
:enew
0270名無しさん@お腹いっぱい。2015/06/16(火) 22:46:05.55
>>268
:enew
0271名無しさん@お腹いっぱい。2015/06/17(水) 00:37:47.03
>>269-270
できましたありがとうございます
0272名無しさん@お腹いっぱい。2015/06/17(水) 10:45:14.62
slackって招待されないと見えないんだな
0273名無しさん@お腹いっぱい。2015/06/17(水) 19:32:23.91
vim、中に出すぞ!
0274名無しさん@お腹いっぱい。2015/06/17(水) 19:39:04.65
emacsならまだ
0275名無しさん@お腹いっぱい。2015/06/17(水) 20:56:00.91
右左にウィンドウを分割して、左側にカーソルがあるとします
:shや:!lsしたときに左側だけで実行して、右側のウィンドウは編集画面のままにすることはVimではできないんでしょうか?
0276名無しさん@お腹いっぱい。2015/06/17(水) 20:59:32.21
そういうのはscreenとかtmuxの範疇な気がする
0277名無しさん@お腹いっぱい。2015/06/17(水) 23:51:01.27
連番作成で覚えやすいコマンドありません?

例えば、PAGE061.jpgからPAGE252.jpgまであるファイルリストをPage_001.jpgからPage_191.jpgの連番にするってのをよくやりますが、
今は:vnewして:call setline(1,range(1,60))してゼロ埋めしてからggyG:q!してPAGE061.jpgの上にペーストしてからPAGE192.jpg以下を消してPAGEをPage_に置換してます
めんどいです。:callのとこいつも忘れます
0278名無しさん@お腹いっぱい。2015/06/18(木) 00:44:23.46
>>277
一気にやるなら
:%s/PAGE\(\d\+\)\.jpg/\=printf('Page_%03d.jpg', str2nr(submatch(1))-60)

連番作成だけならマクロ、関数、increment.vim みたいなプラグインのどれかかな
個人的には UNIX 版だし seq でやんのが一番ラクだと思う
:.!seq -f '\%03g' 1 191
0279名無しさん@お腹いっぱい。2015/06/18(木) 00:59:35.51
>>278
seqのは覚えやすそうですね。いただきます
マクロはともかくプラグインをわざわざ入れるのは抵抗がありますね
0280名無しさん@お腹いっぱい。2015/06/18(木) 01:01:08.02
プラグインならvim-rengbangとかかね
0281名無しさん@お腹いっぱい。2015/06/18(木) 20:23:19.67
更新があるとタブに+が表示されますけど
これを任意の文字か文字列で表示することってできますか?
0282名無しさん@お腹いっぱい。2015/06/18(木) 21:38:45.47
emmet-vimで、!を展開すると、
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>

</body>
</html>
と、なるんですが、<meta charset="UTF-8" />のように、
metaタグのところを />で閉じるにはどうしたらいいですか?
0283名無しさん@お腹いっぱい。2015/06/19(金) 01:00:36.44
英語詳しくないけどドキュメントにempty_element_suffixを設定したらできるって書いてあったよ多分
ドキュメントをempty_element_suffixで検索するとその下にサンプルが合ったから多分それ書いたら行けると思う
0284名無しさん@お腹いっぱい。2015/06/19(金) 01:28:14.12
>>281
vimは
:h setting-tabline にある MyTabLine() 関数を改造
gvimは
:h setting-guitablabel にある GuiTablLabel() を改造
0285名無しさん@お腹いっぱい。2015/06/19(金) 01:31:08.54
>>279
seq のやつもコマンドか関数にしてしまえばもっと楽チン
:Seq 1 191 ってやれば 1から191まで3桁前ゼロで連番作るやつとか
-f ‘%03g’ とかうつのめんどくさいし
0286名無しさん@お腹いっぱい。2015/06/19(金) 12:02:23.67
/x/a/1.txt
/x/b/2.txt
/x/c/3.txt

/x以下に置いてあるサブディレクトリ内のテキストファイルをvimで全て開く方法を教えてください
ファイルの位置は/dir/dir/fileでこれ以上深い階層は存在しません
0287名無しさん@お腹いっぱい。2015/06/19(金) 13:49:24.51
>>286
vim x/**/* とか
0288名無しさん@お腹いっぱい。2015/06/19(金) 14:35:24.09
kaoriyaさんのWin用vimのzipからhz_ja.vimをいただいて:%Zenkakuを使ってみたんだけど、・が全角にならない
156行目あたりに書いとけばいいんだろうけどどこに?
0289名無しさん@お腹いっぱい。2015/06/19(金) 14:47:03.28
失礼、事故解決
let zen_kanaとlet han_asciiとlet s:mx_han_kigouとlet s:mx_han_kigouと176行目に足したら・に対応して動いた
■ このスレッドは過去ログ倉庫に格納されています