-->
./
<!-- フラ&#65533;ュが見れな&#65533;のためにここに何か書&#65533; --> フラ&#65533;ュがインス&#65533;&#65533;ルされて&#65533;&#65533;たいで&#65533;&#65533;&#65533;

2010年03月20日

[vim]名前つきバッファと履歴バッファ、マークとの違い

名前つきバッファと履歴バッファ
JVimには文字列を入れておく「領域」がいくつかあって,一時的に任意の テキストを記憶させたり書き出したりできます
MacやWindowsの操作を知っている人なら「クリップボード」のようなものと 思って下さい

この特殊な「領域」は「バッファ」などと呼ばれ,JVimにはいろいろな種類の バッファを使い分けて活用できるのです
バッファには,どんな種類があって,どのように使うと便利なのかを解説します

 どうもEmacsでいうところのレジスタを、viではバッファと呼んでいるみたいです。バッファはEmacsで、メモリに読み込まれた編集対象の作業領域(多くはファイルそのもの)のことですから、明らかに言葉の意味が違っているように感じました。
 このviのレジスタ(ここではバッファ)は、これまでにちょこちょこ使いましたが、すぐに使わなくなり、そのたびに調べなおしたりしていました。昨夜初めて”(二重引用符)が使えると知ったのですが、以前見かけた記事はすべて`(バッククオート)を使っていたと思います。`(バッククオート)はあまり使わない記号ですが、UNIXでは、`(バッククオート)で囲まれた文字列をコマンドとして実行できる、危険性も併せ持ったような記号だったので、なんとなく使う気がしなかったということもありました。
 ・・・と、ここで気がついたのですが、`(バッククオート)を使うのはマークを使った範囲選択でした。レジスタ番号のようなものを使うという点では、名前付きバッファと似ていますが、よく考えると異なる操作になりそうです。

 マークを使う場合は、たとえばコマンドモードで「mj」と打ちます。するとカーソル位置にjというマークが設定されます。そのあとカーソルを移動して、「y`j」と打つとjというマークを設定した位置から、現在のカーソル位置の直前の文字列が、コピーされますので、所望の位置にいどうしてから、「p」を打つと、コピーした範囲が貼り付けられます。
 ためしてみたところ、「"jp」で貼り付けることはできず、「レジスタjには何もありません」とメッセージが出ました。しかし、「`j」で、マーク位置に移動することはできました。マークと名前付きバッファは、同じくアルファベット人文字で、印を付けますが、扱いが異なるようです。

 参考にさせていただいたページで、特に便利だと思ったのは大文字を使ったバッファへの追加です。「"ayy」「"Ayy」「"Ayy」と繰り返していくと、各行を名前付きバッファaに追加でき、「"ap」でまとめて貼り付けることができました。

 あとHというコマンドの存在も知りました。「”ay3H」で画面に表示されている3行目からカーソル位置までの範囲が名前付きバッファaに記憶されました。このHは、移動系のコマンドみたいです。Hとだけ打つと、画面に見えている範囲の先頭に移動し、3Hと打つと、同じく3行目に移動しました。



 :di でバッファの状態を確認することができるので、これはすごく便利です。


追記:
 どうも「:put a」という方法でも貼り付けることができるようで、わずかな違いですが、「:pu j」と省略することもできるみたいです。
参考:http://homepage1.nifty.com/niwatori/vi/t08.html#kiroku


Powered by ScribeFire.



posted by hirono at 16:41| Comment(0) | TrackBack(0) | Vim

裁判長からは判決文に付帯文がつけられることは少ないと説明されたという。

女性社長強殺、無期懲役判決 付帯文「仮釈放、慎重に」 水戸地裁 (1/2ページ) - MSN産経ニュース
 判決主文は最後に読み上げられた。判決理由で河村裁判長は「身勝手で自己中心的な犯行動機にくむべき点はなく、被害結果は重大」として、死刑か無期懲役かを検討したと言及。「市民感覚に照らせば死刑も十分に考えられるが、冷厳な極刑である死刑を持って臨むのは躊躇(ちゆうちよ)せざるを得ない」とした。

 また、検察側と弁護側が争った殺意の発生時期については、乗用車の荷台で縛られていた石川さんが暴れ、ナイフを持って下車した時点で発生したとして、「最初から殺意があった」とする検察側の主張を退けた。

 判決後には男性裁判員2人が記者会見に出席。「極刑を望む声が最初は強かったが、客観的に事件を見ようという姿勢に変わった」と振り返った男性裁判員は「判決文末尾の『仮釈放について慎重な運用を求める』という付帯文に裁判員の評議が言い尽くされている」と話した。裁判長からは判決文に付帯文がつけられることは少ないと説明されたという。


Powered by ScribeFire.

posted by hirono at 14:57| Comment(0) | TrackBack(0) | 日記

布川事件:検察、改めて有罪立証方針 再審公判の事前協議 - 毎日jp(毎日新聞)

布川事件:検察、改めて有罪立証方針 再審公判の事前協議 - 毎日jp(毎日新聞)
 茨城県利根町布川(ふかわ)で67年に男性が殺害された布川事件で、再審公判の進め方を話し合う3者協議が19日、水戸地裁土浦支部(伊藤茂夫裁判長)であった。無期懲役が確定し、服役後に仮釈放された桜井昌司さん(63)と杉山卓男さん(63)について、検察側は改めて有罪立証する方針を示した。弁護側は早期の無罪判決を求めた。

 協議後に会見した弁護団によると、検察側は再審で、被害者の口に詰められるなどしていたパンツ2枚のDNA鑑定を実施する。また、弁護側の請求に応じ、検察側は目撃者の捜査報告書やメモなど7点の証拠を開示した。桜井さんと杉山さんも協議に出席した。


Powered by ScribeFire.

posted by hirono at 14:52| Comment(0) | TrackBack(0) | 刑事裁判

無罪主張の男に懲役15年 裁判員「新聞報道を加味」 - 47NEWS(よんななニュース)

無罪主張の男に懲役15年 裁判員「新聞報道を加味」 - 47NEWS(よんななニュース)
閉廷後、記者会見した裁判員の30代の男性会社員が「家に帰ってからも(裁判のことが)新聞などに出ているので、加味した上でやっていた」と発言。裁判で提出された証拠以外も裁判員が判断材料にしていたならば、予断を持っていた可能性があり、論議を呼びそうだ。

 原田保孝裁判長は「証拠を総合すると、被告が犯人であることに疑いの余地はない」と判断した上で「犯行は執拗かつ悪質で、反省も見られない」と述べた。


 やはり裁判で提出された証拠以外は考慮に入れたらだめということになりますが、その証拠の大半は警察、検察の側から出ているはずです。


Powered by ScribeFire.

posted by hirono at 14:48| Comment(0) | TrackBack(0) | 刑事裁判

「必要性や合理性がないのに起訴後の取り調べを強行しており公務とは言えない」

公務執行妨害罪:不当取り調べで成立せず 神戸地裁 - 毎日jp(毎日新聞)
 覚せい剤取締法違反容疑(営利目的所持)などで兵庫県警に逮捕され、起訴後の取り調べ前に捜査員にけがをさせたなどとして、同法違反罪や公務執行妨害罪、傷害罪などに問われた雑貨商の尾谷春男被告(52)=同県明石市=に対する判決が19日、神戸地裁であった。岡田信裁判長は「必要性や合理性がないのに起訴後の取り調べを強行しており公務とは言えない」として不当な取り調べと認定。公務執行妨害罪は成立しないとし、その他の罪で懲役5年8月、罰金50万円(求刑・懲役8年、罰金50万円)を言い渡した。

 判決などでは、尾谷被告は長田署に拘置されていた09年1月25日、別件の取り調べで取調室に向かう際、同署の男性捜査員(当時35歳)の顔面を頭突きするなどし、鼻の骨を折る重傷を負わせた。岡田裁判長は傷害罪の成立を認める一方、「捜査員が先に被告の腰縄を故意に引っ張り挑発的な言動をした」と指摘。起訴後の取り調べも「被告の意思に反して取り調べ名目で呼び出した」と非難した。【吉川雄策】

 大路伸一・長田署副署長の話 判決内容を承知しておらずコメントを控える。


 「判決内容を承知しておらずコメントを控える。」とのことですが、とても奥深いものを感じました。

Powered by ScribeFire.

posted by hirono at 14:43| Comment(0) | TrackBack(0) | 警察

放火までは指示していなかったと判断。組員との共謀の成立を認めなかった。

asahi.com(朝日新聞社):「組員に放火指示」の被告に無罪判決 奈良地裁 - 社会
 起訴内容などによると、被告は組員=同罪で有罪確定=に放火を指示。組員が08年3月31日未明、奈良市三条栄町の工事現場のプレハブ平屋建ての休憩所にガソリンをまき、ライターで花火に火をつけて全焼させたとされた。

 判決は、被告が休憩所が使えなくなる程度に嫌がらせをするよう組員に依頼したことは認定したが、放火までは指示していなかったと判断。組員との共謀の成立を認めなかった。


Powered by ScribeFire.

posted by hirono at 14:38| Comment(0) | TrackBack(0) | 刑事裁判

「冤罪(えんざい)の悲劇を繰り返さない方策は国の責務」と強調した。

日弁連:「誤判」原因究明へ、第三者機関設置を提言 - 毎日jp(毎日新聞)
日本弁護士連合会は19日、裁判で無罪が確定したり再審で無罪になった事件について、「誤判」原因を究明する公的な第三者機関設置を求める意見書をまとめ、19日付で首相や法相、最高裁長官、検事総長、警察庁長官らに郵送した。26日に足利事件の再審で無罪判決が言い渡される見通しで、日弁連の提言は議論を呼びそうだ。

 意見書は「教訓が生かされず、司法手続きでの検証は限界がある」として、王立委員会などの検証が制度改革につながった英国やカナダなどの例を挙げ、「冤罪(えんざい)の悲劇を繰り返さない方策は国の責務」と強調した。


Powered by ScribeFire.

posted by hirono at 14:35| Comment(0) | TrackBack(0) | 刑事裁判

asahi.com(朝日新聞社):判決間に合いません 開廷2時間半前に延期 名古屋高裁 - 社会

asahi.com(朝日新聞社):判決間に合いません 開廷2時間半前に延期 名古屋高裁 - 社会
ギリギリまで頑張ったんですが、どうしても間に合いません——。名古屋高裁で19日に判決が予定されていた民事事件で、開廷の2時間半前、裁判所側の都合で突然言い渡しが延期された。先月も延期され、これで2回目。裁判長からの釈明の電話に、原告代理人の弁護士も「えっ」と絶句した。

 原告は愛知県内の女性。夫(当時37)の病死をめぐり、過労死と認めずに遺族補償年金などを不支給としたのは違法として、国を相手に訴えている。2月25日に判決予定だったが、その1週間前に延期されていた。


Powered by ScribeFire.

posted by hirono at 14:32| Comment(0) | TrackBack(0) | 司法

Step up Ruby on Rails - link_to_remote の API ヘルプを日本語訳

Step up Ruby on Rails - link_to_remote の API ヘルプを日本語訳


 書籍にも触れられておらず、ほかに見かけた記事もないので、あるいは自分の環境設定がよくないのかもしれないのですが、link_to_remoteだとJavaScriptが無効の場合、リンクをクリックしても無反応になるみたいです。仕方なくform_remote_tagとsubmit_tagを使っているのですが、これだとCSSのデザインがずいぶんややこしくなります。:style=>は使えますが。

 ちなみに、form_remote_tagだと生成され、ブラウザに送信されたコードは、次のようになっています(適当に改行をいれました)。formタグの中にdivタグが入っています。
  <form action="/indictment_datas/ajax_data_view/4" method="post" onsubmit="new Ajax.Request('/indictment_datas/ajax_data_view/4', 
{asynchronous:true, evalScripts:true, parameters:Form.serialize(this)}); return false;"><div style="margin: 0pt; padding: 0pt;">
<input name="authenticity_token" value="6bb7fdfb3ccb77d9ae2946b89b7d0508d7237c14" type="hidden"//></div>
            <input name="commit" style="border: 0px none ;
 background: transparent url(../images/buttons/k_view-40x19.png) repeat scroll 0% 0%; color: white; width: 44px; height: 19px;
 -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; cursor: pointer;
 margin-right: -8px; margin-bottom: -4px;" value="" type="submit"//>
    </form>

 Viewのコードはこうです。
    <% form_remote_tag :url => { :action => 'ajax_data_view', :id => t.id }  do %>                          
            <%= submit_tag '', :style=>' color: white;  width: 44px; height:19px; background: url("../images/buttons/k_view-40x19.png"); no-repeat; cursor:pointer; margin-right: -8px; margin-bottom: -4px; border: 0px;' %>                                                                                                         
    <% end %>

 これだとコントローラで、fomart.jsとformat.htmlを入れることで、JavaScriptが無効の場合、html.erbが開きます。


Powered by ScribeFire.



posted by hirono at 08:08| Comment(0) | TrackBack(0) | Rails

Spreadsheet(RubyでExcelのファイル操作)

pure Ruby の Excelファイル操作ライブラリ - Spreadsheet: ひ日記
SpreadsheetはRubyからExecelファイルを操作するライブラリです。 MS-Officeには依存していないので、MS-Officeのインストールされていない環境(要はLinux環境)でも動作します。

 参考にさせていただきました。

 さくらインターネットのサーバで試してみたのですが、うまくいったみたいです。Excelはもちろんインストールされておらず、GUIの環境もないはずですが、大丈夫でした。

spreadsheet_OpenOffice_20100320
spreadsheet_OpenOffice_20100320 posted by (C)hirono-hideki

spreadsheet_firefox_20100320
spreadsheet_firefox_20100320 posted by (C)hirono-hideki


 Railsでやってみました。新規に作ったAPPなので、プラグインも入れておらず、特別な設定もしていません。手を入れたのは次の二つのファイルだけです。
 本来このような使い方をするつもりはないのですが、少し手を加えれば、Excelのファイルから、MySQLのデータベースに入れることが簡単にできそうです。また、問題の起きそうな記号を使って試してみました。十分なテストではありませんが、とりあえずは大丈夫そうです。

 book = Spreadsheet.open('test.xls', 'rb')で、読み込み専用になるそうです。オプションをつけないと'rb+'になるらしく、これは読み書き両方だと思います。

***********************************************                                                   
 [FILENAME] app/controllers/excel_controller.rb                                                   
***********************************************                                                   

class ExcelController < ApplicationController
  def index                                 
$KCODE='u'                                  
require 'spreadsheet'                       

book = Spreadsheet.open('test.xls')
sheet=book.worksheet(0)           

@list=[]
0.upto(sheet.row_count - 1) do |i|
  @list[i]=sheet[i,0]            
end                              

  end

end


***********************************************
 [FILENAME] app/views/excel/index.html.erb
***********************************************

<h1>Excel#index</h1>
  <% @list.each do |f| %>
    <p style="margin 30px; background-color: pink; color: green; padding:20px; width: 600px;">
    <%=sanitize f.gsub(/\r\n|\r|\n/, "<br />\n").gsub(/[ |\t]/, "&nbsp;") %>
    </p>
  <% end %>

<p>Find me in app/views/excel/index.html.erb</p>


Powered by ScribeFire.



posted by hirono at 04:55| Comment(0) | TrackBack(0) | Ruby