トントンってのがさ,つい.って話.(まーくだん変,じゃなく markdown 編)
markdown 形式での編集作業について.
ここで話題にしたいのは "改行" についてです.
<br>
に展開されるあれです.
行末に半角のスペースを 2 つ以上入れる,というあれ
皆さんは markdown 形式上での作業中,この作法に煩わしさを覚えることってありませんか?
自分はしばしばあります.と言いますか,しょっちゅう.
とりわけ,入力作業にスピードが求められるようなシーン.
こんな状況下となりますと,「行末にスペース 2 個入れて return」というどうってことない単純な手続きが,それこそ「いちいち...」になってしまうのです.
そのうち「忘れる → 気になる → タイプ作業自体が乱れる → 集中できなくなる → ぶっち切りで置いてかれる → 慌てる → (闇)」といった悪循環の華が開くわけです.
だったらいっそのこと作業中一切忘れて集中し,後でまとめて修正なり調整をすれば,とも考えるわけです,当然.でもこれも結局,後へしわ寄せしただけの話で,それなりの手間を要する.
とこんな過ちを経て以下のような Vim script を用意して凌ぐことにしました,と言うのがこの度のお話です.
括弧に囲まれた英字を大文字に,半角スペースはアンダースコアに
想像以上に手こずったのでメモ.
こんなデータがありまして.;
<First Line> <Second Line> <Third Line> <Forth Line var1> / <Forth Line var2> / <Forth Line var3> This is <Fifth Line> Copyright COMPANY INC. <Sixth Line>
こんなデータに対し以下のような作業をしなければならない場面に出くわしました.
やることは,
括弧に囲まれた中の文字列,その内容は半角英数字限定,をすべて大文字にし,かつ半角スペースは _
アンダースコアにする.
こんな感じになれば良しと.;
<FIRST_LINE> <SECOND_LINE> <THIRD_LINE> <FORTH_LINE_VAR1> / <FORTH_LINE_VAR2> / <FORTH_LINE_VAR3> This is <FIFTH_LINE> Copyright COMPANY INC. <SIXTH_LINE>
結果やったこととは,手続きを 2 つに分け,このような感じに.
まず括弧内の半角英字を全て大文字にし.;
:%s/<.\{-}>/\U&/g
でもって,括弧内にある半角スペースにアンダースコア "_
" を埋める.
:%s/<\(\u\+\s\)\+.\{-}>/\=substitute(submatch(0)," ","_","g")/g
一応それなりにイメージ通りの結果になってくれたのですが,絶対もっとスマートな方法があるはず,とは思っています.
今の自分はこれが精一杯の様子.
もしこれを見て,「いやいやそんな面倒なことやらなくても,ホラ...」的なことございましたら,是非々々ご教示をば.
ダイヤル `^M` を廻せ!
あーもーやだ.
試行錯誤を繰り返すも,一向に結果が伴わない.
これはイケナイやつです.
埒明かないので頭冷やす上でも一旦ここで切って,現状でまとめておこうかと思います.
改行の表記は今後,\r
推しで行く
と言うことに決めたっ,という話です.
具体的にはこんなことです.
続きを読む桐島,NeoBundle やめるってよ
野暮すぎるタイトルなのは分かっているのですが,...かとてry*1
先日 vimrc 読書会でとりあげられていたこちらの rc を眺めていて,思うところあり今更ながらに NeoBundleLazy 化を試みたのです.そして結果,起動スピードがそれまでのと比較して,体感できるほどの差でより速くなった,と言う,想像以上の効果に驚き,にまにまにましていました.
と次の日,もっと何かできる事あったりしないだろうか,と引き続き Web 上で彷徨っていたら目にしたもの.;
自分の環境を全て dein.vim に置き換えたので,neobundle は今後致命的バグを直すだけになります.
via. vim-jp – Lingr
「.....」
*1:さすがに,作者ご本人の名前を当てる勇気なkdヵ;sぽq
vimfiler.vim でも分割して開く
またいつもの「わすれるのこわい」の備忘録ではじさらしますyo.
unite.vim でウィンドウを分割して開く設定をしているのですが,同じ振る舞いを vimfiler.vim でもできるようにしたいなあ,と思ったのです.
Vim / goodiesfirst
最初ネット上で色々探し廻って,実はヘルプにがっつり書いていました,って言う...
またやった.;
nnoremap
v
\ vimfiler#do_switch_action('vsplit')
nnoremaps
\ vimfiler#do_switch_action('split')
ヘルプ読め.*1
*1:と言うかそもそも,そこまでの戦闘力が無いと言う orz