「Screen」を含む日記 RSS

はてなキーワード: Screenとは

2018-07-16

anond:20180716101457

英英辞典で調べてきた「video game」の意味置いとくね。

a computer game in which you move images on a screen using electronic controls

ゲーセン限定意味では「アーケードゲーム」っていう君自身が使ってる言葉があるからビデオゲームもっと広い意味だよ。

2018-06-21

[][] 戦後の3S政策痴呆に改造された日本人

SNSを見ると、日本人の知性の低下が観察できる。

当人は楽しんでいるつもりだろうが、「アリとキリギリスよろしく無知貧困自殺or犯罪者コースを突き進んでいる。

「アリとキリギリス」は、イソップ寓話ひとつ

 

夏の間、アリたちは冬の食料を蓄えるために働き続け、キリギリスバイオリンを弾き、歌を歌って過ごす。やがて冬が来て、キリギリス食べ物を探すが見つからず、最後にアリたちに乞い、食べ物を分けてもらおうとするが、アリは「夏には歌っていたんだから、冬には踊ったらどうだい?」と食べ物を分けることを拒否し、キリギリスは飢え死んでしまう。

 

一方で、アリが慈悲心(哀れみの心)をもって食べ物を分けてあげるという改変が古くからある。食べ物を分けることを拒否し、キリギリスが飢え死ぬのでは残酷だというので、アリは食べ物を恵み、「私は、夏にせっせと働いていた時、あなたに笑われたアリです。あなたは遊び呆けて何のそなえもしなかったから、こうなったのですよ」とキリギリスに告げ、それを機にキリギリスは心を入れ替えて働くようになるなどという展開に改変される場合もある。

 

奴隷地位から脱却できない日本人は哀れだ。

「マジメか!」と馬鹿にされながらも、努力して自由を獲得できた日本人は、賢明→裕福→セミリタイア生活コースを選べる。

 

日本人は、なぜバカになってしまったのか?

戦後の宣撫工作=3S政策で、飼い慣らされているからだ。

 

3S政策(さんエスせいさく)とは、Screenスクリーン映画)、Sportスポーツプロスポーツ)、Sexセックス=性産業)を用いて大衆の関心を政治に向けさせないようにする愚民政策であり、そのような政策があったとの主張である

頭の悪い人は、3S政策メリットデメリットを把握することができない。

キリギリスのような連中なのだろう。(残念)

2018-06-05

米国日本 VS 中国北朝鮮サイバー戦争

情報戦を制する者は世界を制する。

敗戦後の日本人は、アメリカの宣撫工作洗脳されて、原爆日本人大量虐殺したアメリカ感謝する「ストックホルム症候群」に改造された。

イエローモンキー日本人は、原爆人体実験材料にされた。

彼らが日本人を愚弄する合言葉は「パンティー」「うんこ」「差別」。

日本人バカ奴隷だと思ってやがる。やれやれだぜ

 

3S政策(さんエスせいさく)とは、Screenスクリーン映画)、Sportスポーツプロスポーツ)、Sexセックス=性産業)を用いて大衆の関心を政治に向けさせないようにする愚民政策

2018-03-01

増田linux遣い、教えろ

screenで画面を分割したままscreenをデタッチした後に

もう一回そのscreenに復帰したときに画面分割状態をそのまま復帰させる方法を教えろ。

2017-12-25

全文パクリサイト発信者情報開示請求して1000万円請求した話

 「ブログ文章画像をパクったサイトを作られた! しかもググったら私のブログより上に出てくる!」といった話を見聞きするようになった。

 細々とブログ運営している私には対岸の火事と思っていたのだが、先日、私のブログパクリ被害を受けた。そこで泣き寝入りせず、逃げ得させない方針で対抗し、ある程度、成功を収めたので、個人情報などはぼかしつつ、その経験を共有したい。

————————————————————————————————————

 私がパクリに気付いたのは、外出先で自分記事確認しようと、最新の記事タイトル検索した時のこと。検索一覧で、自分ブログのすぐ下に、見慣れない名前サイトが現れたのだ。「たまたま同じタイトル記事を書いた人がいるのかな?」と確認すると、文章画像も私のブログとまったく同じ。

 「パクられてる・・・

 血の気が引いた。パクリサイトを詳しく見ると、なぜか記事の筆者として私のIDが示されている。私のIDクリックすると、“私の記事一覧”なるページへ移動。そこには、これまで数カ月の私のブログパクリ記事が並んでいた。

 パクられていたのは私だけではない。パクリサイト最近投稿を見ると、数十もの異なったブログから記事をパクっていた。

 パクられているブログには共通点があった。それはブログ更新情報を伝える「RSS全文配信」という仕組みを使っているブログを利用していること。

 RSSブログなどを登録すると、記事更新があった時にすぐに伝えてもらえる仕組み。仕組み自体は便利なのだが、パクリサイトは伝えられた更新情報悪用し、即座に記事の内容をそのまま自動的パクリサイトにアップしていたのだ。「RSS全文配信」ではなく、「RSS一部配信」なら防げるのだが、例えば、このはてな匿名ダイアリーの親戚であるはてなブログではRSS全文配信しか選べないので、こうした被害を受けやすい。

 キュレーションサイト自称するそのパクリサイトには注意書きがあった。

 「リンクさせていただいた際には、運営者さまへご連絡させていただき、ご承諾いただいた上で当サイト運営しております。 万が一、こちらの不手際でご連絡差し上げておらず、ご承諾をいただいてないブログ運営者で、リンクを外してほしいとのご要望がございましたら、すみやかに誠心誠意対応させていただきますので、よろしくお願いいたします」

 何が“誠心誠意”だ、こんなパクリサイトへの転載を承諾しているわけがない。

 私と同じく記事をパクられていて、連絡先が分かった人に確認すると、やはり「まったく連絡はいただいておりません!」との返事がきた。つまり、この注意書きには、パクリ元に見つかったらミス言い逃れ第三者から通報も抑止しようという、悪質な意図が込められていることになる。

————————————————————————————————————

 どうすればいいのか。

 パクリサイトには問い合わせページが用意されていたので、そこから連絡し、私のブログをパクったページを削除させるのは簡単だろう。しかし、それではパクリサイト運営で得た収入をなくせるわけではないし、私以外からパクった記事も削除されない。

 そこでWELQ問題の際、パクられた写真の利用料(賠償金)を請求した例にならうことにした。パクリサイト運営者が今までに得た収入を上回る利用料をとれれば、パクリサイト運営する動機消滅するのではないかと。

参考:キュレーションメディアに写真をパクられたので請求書を送って、18万円支払ってもらった(https://www.photo-yatra.tokyo/blog/archives/11079

 パクリサイトは1日1万5000ページビュー自称しており、Google Adsense広告を利用していた。Google Adsenseだと収入はざっくりページビュー10分の1円ほど、つまり1日1500円の収入パクリサイト過去記事を見ると数年運営していたので、100万円以上得ていると推測した。

 問題パクリ行為100万円以上請求する根拠であるほとんどのブログと同様、私のブログも「記事をパクったら●万円!」「写真は●万円で販売中」などとは示していない。また、パクられた写真すべてが「自分が完全に著作権を持っている写真」と自信を持って言えるかという問題もある。例えば、肖像権が含まれ人物写真ロゴキャラクター商品写真サイトキャプチャーゲームの1シーン、マンガコマなどは難しい。

 そこで発想を転換することにした。今までパクられた記事の利用料をとるのではなく、確実に私に著作権がある有料写真を大量に含んだ記事作成し、それをパクらせた上で利用料をとればいいのではないか、と。

————————————————————————————————————

 さっそく外出して、公園や雲、植物など、権利侵害しない写真撮影。私が撮影した証拠にもなるよう、一部の写真には私のメールアドレスを書いた紙も写りこむようにした。一応、有料販売する体裁なので、ピンボケなどしないように気を遣い、できる限り良い写真を撮ることに努めた。

 こうして撮影した写真ブログ掲載していくのだが、注意すべきはブログサービス規約。例えば、はてなブログでは「記事内での直接販売」を禁じている。そのため、別の場所写真販売して、ブログではそれを紹介する形にしなければならない。

 個人でも写真販売できるサービスにはPIXTAやFotoliaなどがあるのだが、ほとんどは審査があり、料金も自分で決められない。

 そこでオススメなのがnote、「ノート投稿する」からイメージ」を選ぶと、好きな価格写真販売できるのだ。販売価格の上限は1万円だが、noteプレミアムに入ると5万円に引き上げられるので、加入して1枚5万円で50枚販売することにした(1カ月に200点以上または一時点において100点以上の商品新規出品する場合特定商取引法に基づく販売業者として連絡先を掲載しないといけないので注意)。

 次にブログ販売写真を大量に掲載して紹介するのだが、パクリサイト自動的パクる際、相手はどうせパクった記事をチェックしていないと予想されるので、さまざまな注意事項も書いておいた。

 「転載禁止」「転載を認めている媒体はない」「無断使用した場合、1枚につき使用料ペナルティとして倍額の10万円」 「不正使用とみなされる場合損害賠償を求めるなど法的な措置を講じる」「キャンペーンなど短期的な利用であっても同じ料金」などなど。

 写真のものにもPhotoshopで同様の文言を埋め込み、「(C)2017 (私のID)」と著作権表示も加えた。加工なしの写真掲載すると、パクった相手が「これは自分が撮った写真だ!」と逆に主張してきた際、オリジナル写真を示して自分が作者と証明できなくなるので、こうした文言は入れておいた方がいい。私の場合は、1つの写真につき、著作権表示のみの画像と注意事項も加えた画像の2種類、計100枚をブログ掲載した。

 「もしかすると気付かれてしまうかも・・・」と危惧していたのだが、数十分後にパクリサイト確認すると、無事(?)、私の写真紹介記事がパクられていた。ご丁寧に注意書きもそのまま転載されている。

 さっそく証拠確保のため、(1)ウェブ魚拓をとり(念のため「https://megalodon.jp/」「http://archive.is/」双方で)、(2)右クリックからページを保存、(3)右クリックからソースを表示してコピペして保存、(4)Google Chrome拡張のFull Page Screen Captureを使用してページ全体をキャプチャーさら一時的ミスと言いわけできないよう、1週間後にも同様の作業を行った。

————————————————————————————————————

 完全に証拠を押さえたところで、利用料を請求する段であるパクリサイト運営者に連絡するには、問い合わせページを使う方法もあったのだが、より正式方法ドメイン登録者情報を調べて、そちらから連絡することにした。最終的に裁判で利用料を請求することになった場合相手名前や住所が必要になるからだ。

 ドメイン登録者情報の調べ方は簡単。例えばアスカネットワークサービスの「http://whois.ansi.co.jp」でパクリサイトURL検索するだけ。

 ・・・と思ったのだが検索した結果、「Registrar Abuse Contact Email(不正使用の際に連絡するメールアドレス)」として表示されたのは、GMOインターネットメールアドレス。これは個人情報を隠すため、GMOインターネットお名前.comというサービスを利用していた時に表示される。

 なのでGMOインターネット電話し、「著作権侵害され、利用料の請求書を送りたい」と伝えると、パクリサイトエックスサーバーというサーバー会社を利用していると教えてくれた。なお、ここでは著作権侵害の具体的内容を説明する必要はなく、パクリサイトこちらの動きが伝わることもない。

 次にエックスサーバーに連絡すると、パクリサイトエックスサーバー運用されていることは確認できたのだが、「発信者情報開示につきましては、プロバイダ責任制限法に基づき、書面にて発信者情報の開示請求をお送りいただいたもののみ対応いたしています」とのこと。まあ当たり前だ。

————————————————————————————————————

 名前や住所、メールアドレスなど発信者情報の開示請求必要ものとして、エックスサーバーから指定されたのは次の3点。

(1)発信者情報開示請求書http://www.isplaw.jp/d_form.pdf

(2)印鑑証明書

(3)問題サイトから情報流出によって権利侵害されたとすることが確認できる資料(2部)

 (1)発信者情報開示請求書テンプレートがあるものの、自分用にカスタマイズしないといけないので若干面倒。テンプレートの「貴社・貴殿」「注」などをうっかり修正し忘れてしまい、何度か作り直すことになった。書き方は↓の記事を参考にさせてもらった。なお、「発信者に示したくない私の情報」として私の氏名を指定した。

参考:写真無断使用された時の発信者情報開示請求の仕方(http://tanaka-desu.com/puroseki-hassinsya-kaiji/

 (2)印鑑証明書役所で発行してもらえるのだが(350円)、そもそも印鑑登録しておかないといけない。シヤチハタ印は印鑑登録できないので、実印を持っていなければ制作に少なくとも数千円、数日みておく必要がある。

 (3)資料パクリサイトがパクった記事と、自分ブログのパクられた記事PDFで保存して、セブンイレブン印刷写真100枚が含まれ記事で、しかも各々のサイトを2部ずつ印刷したので、コピー代だけで2500円かかった。

 (1)~(3)の書類を合わせると数センチにもなったので、郵便局レターパックプラス(510円)で送付。この書類サーバー会社に届くとパクリサイト運営者に連絡がいくので、必ずここまでに証拠を固めておくことが大切。Twitterなど表で騒ぐのも厳禁、書類が届いてサーバー会社ログを保存する前に該当記事を削除されてしまうと開示は認められなくなるらしい。

————————————————————————————————————

 書類を送った翌日、パクリサイトに変化が生じた。私のブログからパクった記事がすべて削除されたのだ。ただし、サイト自体は通常営業で、ほかの人の記事は全力でパクリ続けている。

 権利侵害根拠となる写真紹介記事が削除されたことで、「もしかすると発信者情報開示請求が通らなくなるかも」と心配したのだが、書類送付から2週間後、エックスサーバーから封書が届く。中を見ると、「発信者氏名」「発信者住所」「登録メールアドレス」が記されていた。

 さっそく登録メールアドレス宛に連絡。「発信者氏名」「発信者住所」が正しいか確認するとともに、該当記事を削除しているがウェブ魚拓証拠を示せること、写真100枚の転載料として10万円×100枚=1000万円を請求すること、そもそもどういう考えで運営しているか聞いてみたい、という内容にした。書き方は↓のサイト、およびネット写真を盗用された場合対処法を解説した『アサヒカメラ 2017年2月号』を参考にした。

参考:キュレーションメディアに写真をパクられたので請求書を送って、18万円支払ってもらった(https://www.photo-yatra.tokyo/blog/archives/11079

 すると、4時間後、すぐに相手から返信があった。謝罪言葉サイトを閉鎖したとのこと、ただし金額については妥当とは思えないところがあるという内容だった。

 この場合裁判金額を決めることになるのだが、そこまで進めるかどうかで悩んだ。同様のパクリサイトが生まれないようにするためにもパクリで高額の賠償金が発生することを判例として残すことは重要。私の主張が全面的に認められるかは分からないが、いろいろ調べた結果、ペナルティ部分は認められないかもしれないが、利用料部分は認められるのではないかと予想していた。

 しかし、相手個人可能性が高いこと、悪用が禁じられているとはい名前や住所といった個人情報が開示される罰則を受けていること、相手Google AdsenseIDなどで調べた結果たどりついた他のアフィリエイトサイトがあまり儲かっていないようにみえたこと(儲かっていたらこんなリスキーな手は使わない)、ほかにパクリサイト運営者がいる中、不幸にも私という当たり屋に追突してしまったのがちょっと気の毒に思えたこと、などからサイトを削除したことで良しとして、また何らかの権利侵害されない限り、請求は保留すると伝えた。ちなみにここまでは私の名前や住所は相手に伝えず進めていたのだが、請求書を送ったり、裁判に訴えたりするとなると、もちろん名前や住所を出す必要がある。

 そもそもRSS情報自動サイト転載する仕組みは、ネットに関する知識技術をそれなりに持っていないとできないこと。それだけの能力を持った人がパクリサイトに手を出した背景には、発覚した時の罰則が軽そうにみえたことがあっただろうが、この記事によって、その認識を変えられたらと思う。

 もし本当に悪い人が目を付けたなら、有料画像を大量に掲載し、パクらせることで、理論上、1億円でも10億円でも無限に、しか理屈が通った上で請求できるので、一発で破滅してしまう。

 今、パクリサイト運営しているならすぐに閉鎖した方がいいし、パクリサイト被害を受けている人がいるなら、ぜひこの方法で利用料を請求してほしい。私もまたパクられることがあれば、今度はしっかり利用料をもらうところまで進めるつもりだ。

 一応、著作権違反損害賠償請求時効3年で、しばらく悪いことはしにくいと思うので、相手の方にはこれを良い機会として、高い能力社会のために生かしてほしいと心から願っている。

2017-12-07

うっうっうっうっううっ

Power DoLLs 1 (2009) OST - Power DoLLs (Title Screen)

https://www.youtube.com/watch?v=wI_bzL9GEkY

         ♪\(^o^) ♪

          _  )  > _ キュッキュ♪

        /.◎。/◎。/|

  \(^o^)/.| ̄ ̄ ̄ ̄ ̄|  |  \(^o^)/

    )  )  .|        |/   ノ ノ

((((  > ̄ > )))) \(^o^)/ ((( < ̄< ))))

              )  )

         (((  > ̄ > ))))

         

         

         

<(^o^)> 

  ( )

 //

<(^o^)>  

( )

 \\

..三    <(^o^)> 

 三    ( )

三    //

.     <(^o^)>   三

     ( )    三

      \\  三

なんとなく、この曲にはこの2ちゃんねるAAが似合う気がする。

2017-11-15

anond:20171115104805

AV日本人痴呆化するための政策です。偶然に成立した産業ではありません。条件を整えて必然的に実現した産業なのです。

AVの罠にひっかかると猿になるので皆さんも十分に気を付けてくださいね

 

3S政策 - Wikipedia

3S政策とは、Screenスクリーン映画)、Sportスポーツプロスポーツ)、Sexセックス=性産業)を用いて大衆の関心を政治に向けさせないようにする愚民政策であり、そのような政策があったとの主張である

 

AVは悪くないという主張は、AV利益を得ている支配層の主張・論理なのです。(頭を使ってよく考えてみましょう)

2017-08-25

1999年SF映画、『マトリックス』とその続編についても批評家意見は一致していない。『マトリックス』は人類を救う救世主となる白人コンピューターハッカーネオキアヌ・リーブス)が主役の映画である[16]。マシュー・ヒューイは彼の著書、The White Savior Filmの中で、「コンピューターシミュレーテッドリアリティの外側の多文化的な景観に入り込んだ白人主人公が彼の恩寵を通じて、今にも起りそうな災害から白人の人々を救い始めなければならない。」と記している[17]。ハーナンとヴェラは著書、Screen Saviors: Hoiiywood Fiction of Whitenesssで『マトリックス』を人種が異なる援助者のチームを持つ白人救世主という近頃の白人救世主物語の「最新作」として分類している。彼らは、「その映画潜在的白人人種差別主義批判は、黒人キャラクターのモーフィアスやオラクル、モーフィアスの仲間のタンクやドーザーなどの白人救世主であるネオに仕える弟子たちなどの神話プロットによって否定される[18]。」 アディリフ・ナマはこれに対して、著書、Black Space: Imagining Race in Science Fiction Filmでモーフィアスとオラクル重要任務について「概して、その探求は白人救世主によってもたらされた任務よりも、黒人男性女性によってもたらされた任務のように見える。その黒人キャラクター簡単に読み解くと、ブラック・パワー運動公民権運動象徴的で文化的試金石や、それらの残余である[19]。」

本当は怖いサザエさんみたいな深読み芸になっててワロタ

2017-04-23

http://anond.hatelabo.jp/20170423213123

Windowなら

★ スクリーンショットScreen shotだっけ。

https://www.sony.jp/support/vaio/beginner/dialogue/068.html >初心者向けの情報なんだねー

★ OSでalt + tabアプリケーションの切り替え

★ Excelを使うときには。F2文字入力になる。

★ オフィス使うなら、複製で control + D かな。他に、ショートカットコピペ以外の終了とか、閉じるとかでも積極的に使うようにすることかな。

 

2016-12-11

最近観た動画 「正直なゲームトレイラーHearthStone

動画 → https://www.youtube.com/watch?v=UMqBOmvba0g

日本語訳 → http://www.nicovideo.jp/watch/sm26308196

概要

YouTubeチャンネルScreen Junkies」で配信している動画シリーズの一つ。

トレイラー風の演出で、様々な映像作品を茶化したりする「正直な映画トレイラー」(Honest Movie Trailer)のゲーム版

HearthStone」ならではのツッコミや、TCG共通する問題ソシャゲありがちな問題、そのプレイ映像配信する人間すら茶化しまくる。

エンタメとして成立させるために、やや偏重した内容なので、あくまで半分ネタとして観たほうがいいかもしれない。

また、元動画一年上前にアップされたものなので、そこらへんの時代性や、国柄含めて考慮したほうがいいだろう。

2016-11-08

からも娘からも邪険にされる父親像を一般化させたのは一体誰?

からも娘からも邪険にされる父親像を一般化させたのは一体誰なんだろう

というコメントがあったので

フェミ団体でしょう

そして、そのフェミ権力を与えたのは戦勝国アメリカでしょう

日本弱体化政策」の一環

占領せず洗脳で弱体化を図る!GHQが行った『日本弱体化政策』とは

http://matome.naver.jp/odai/2142192163190654201

日本が再び米国の脅威とならないことを確実にする」

家族の結びつきは重要です

少子化シングルマザーが増えているのはGHQの狙い通り



あるユダヤ人懺悔日本人に謝りたい

http://d.hatena.ne.jp/sifue/20061208/1165688702

日本国憲法(というかユダヤドイツ人を骨抜きにするために作ったワイマール憲法の丸写し内容)で、何がしたかたかというと

人間獣化計画

目的は以下のとおり

愛国心消滅

悪平等主義

拝金主義

自由の過度の追求

道徳軽視

3S政策事なかれ主義(Sports Sex Screen)

無気力・無信念

義理人情抹殺

俗吏属僚横行

否定消極主義

自然主義

刹那主義

突端主義

国粋否定

享楽主義

恋愛至上主義

家族制破壊

民族的歴史観否定

間違いなく、日本物質的豊かさの反面で大流行している精神的退廃じゃないですか

(苦笑。本当にユダヤ人法律家ってすごい賢いなって思いました。

最終的にたどり着くところは、家族制度の完全崩壊と金、金、金の欲と利害関係にまみれた個人主義的なエコノミックアニマルばかりの国家

というか国家として機能しない社会を作るのが目的なんだそうです。

いわゆる精神崩壊国家崩壊目的とした憲法ですね。

そもそもこの日本国憲法の元となったワイマール憲法は、

ユダヤ人迫害されてきたヨーロッパユダヤ人政府ワイマール共和国ができたときに、

大多数のドイツ人の中に生きるユダヤ人が復権するために作った人民飼い殺し用の憲法らしく、

どうせなので日本でもその写しを戦後日本でも使ってやれ、と適用されたそうです。

(ちなみにドイツではその危機ドイツ人が感づき、反発でナチズムが横行してユダヤ人迫害された)

で結果、日本では物質的豊かさと反比例して、日本人精神家族国家をここまでぐちゃぐちゃにしてしまった。

で、このユダヤ人の老人モルデカイ・モーセさんは日本人はいろいろよくしてもらったのに申し訳ない…最後に謝りたい、とこの告白をしたのがこの本というわけです。

憲法の内容とその効果資本主義共産主義をの両方を道具として生き残るための使ってきたユダヤ歴史などを詳しく紹介してくれています

特に憲法の中で「自由」と「平等」という相反する概念の組み合わせがどれだけ人をダメにするか、「義理人情」の方がどれだけ崇高な概念かとかいている所は、かなりぐっときます民主主義がどれだけ虚妄か本当に勉強になりました。

まあこんな気持ちユダヤ人の方がいたということで、ぜひ、一度読むことをオススメしたい本です。内容的には、最近流行っている「国家の品格」とかに近い本ですね。


男女平等は完全な家族制度の崩壊福祉費用の増大による国家疲弊を狙ったものだったんですね。

しかしたら、婦人国有なんていう制度が導入されていた日本の事を考えると寒気がします。

ももしかしたらほぼ、この婦人国有政策実施されているのと同じような世の中なのかもしれませんが、

こんな政策実施されていたら、女性ただイケメンに抱かれるために努力し、

はいい女を奪い合う、まさに恋愛至上主義道徳軽視の快楽主義自然主義が更に蔓延した社会(非モテ非コミュさらにつらい社会)になっていたんでしょうね。

そう考えると、日本に古来からあったお見合い制度や信頼ある人同士が結婚相手を紹介し合う制度は非常に道徳的にも精神的にも高度な文化なのかもしれません。






http://anond.hatelabo.jp/20161107131126

2016-10-17

vimをtinyでmakeするとエラーが大量に出るんだが

インストール出来てるし起動もできてるから無視していいのかな

clang: warning: argument unused during compilation: '-I .'

clang: warning: argument unused during compilation: '-I proto'

clang: warning: argument unused during compilation: '-U _FORTIFY_SOURCE'

screen.c:1513:17: warning: self-comparison always evaluates to true [-Wtautological-compare]

if (curwin == curwin)

^

screen.c:5676:19: warning: self-comparison always evaluates to true [-Wtautological-compare]

&& Columns == Columns)

regexp.c:3790:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

regexp.c:3790:24: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

regexp.c:3790:24: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

regexp.c:4052:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

regexp.c:4052:24: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

regexp.c:4052:24: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

regexp.c:5276:25: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

regexp.c:5276:25: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

regexp.c:5276:25: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

regexp.c:5337:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

{ if ((rex.reg_match == ((void*)0))) *(&rex.reg_startpos[rp->rs_no]) = (&rp->rs_un.sesave)->se_u.pos; else *(&rex.reg_startp[rp->rs_no]) = (&rp->rs_un.sesave)->se_u.ptr; };

~~~~~~~~~~~~~~^~~~~~~~~~~~~

regexp.c:5337:24: note: remove extraneous parentheses around the comparison to silence this warning

{ if ((rex.reg_match == ((void*)0))) *(&rex.reg_startpos[rp->rs_no]) = (&rp->rs_un.sesave)->se_u.pos; else *(&rex.reg_startp[rp->rs_no]) = (&rp->rs_un.sesave)->se_u.ptr; };

~ ^ ~

regexp.c:5337:24: note: use '=' to turn this equality comparison into an assignment

{ if ((rex.reg_match == ((void*)0))) *(&rex.reg_startpos[rp->rs_no]) = (&rp->rs_un.sesave)->se_u.pos; else *(&rex.reg_startp[rp->rs_no]) = (&rp->rs_un.sesave)->se_u.ptr; };

^~

=

regexp.c:5355:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

{ if ((rex.reg_match == ((void*)0))) *(&rex.reg_endpos[rp->rs_no]) = (&rp->rs_un.sesave)->se_u.pos; else *(&rex.reg_endp[rp->rs_no]) = (&rp->rs_un.sesave)->se_u.ptr; };

~~~~~~~~~~~~~~^~~~~~~~~~~~~

regexp.c:5355:24: note: remove extraneous parentheses around the comparison to silence this warning

{ if ((rex.reg_match == ((void*)0))) *(&rex.reg_endpos[rp->rs_no]) = (&rp->rs_un.sesave)->se_u.pos; else *(&rex.reg_endp[rp->rs_no]) = (&rp->rs_un.sesave)->se_u.ptr; };

~ ^ ~

regexp.c:5355:24: note: use '=' to turn this equality comparison into an assignment

{ if ((rex.reg_match == ((void*)0))) *(&rex.reg_endpos[rp->rs_no]) = (&rp->rs_un.sesave)->se_u.pos; else *(&rex.reg_endp[rp->rs_no]) = (&rp->rs_un.sesave)->se_u.ptr; };

^~

=

regexp.c:5516:22: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

regexp.c:5516:22: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

regexp.c:5516:22: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

regexp.c:6213:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

regexp.c:6213:21: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

regexp.c:6213:21: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

regexp.c:6266:25: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

regexp.c:6266:25: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

regexp.c:6266:25: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

regexp.c:6294:25: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

regexp.c:6294:25: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

regexp.c:6294:25: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

regexp.c:6325:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

regexp.c:6325:24: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

regexp.c:6325:24: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

regexp.c:6341:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

regexp.c:6341:24: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

regexp.c:6341:24: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

regexp.c:6363:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

regexp.c:6363:24: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

regexp.c:6363:24: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

regexp.c:7711:25: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

regexp.c:7711:25: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

regexp.c:7711:25: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

regexp.c:7740:23: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

regexp.c:7740:23: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

regexp.c:7740:23: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

In file included from regexp.c:8043:

./regexp_nfa.c:3995:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

./regexp_nfa.c:3995:24: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

./regexp_nfa.c:3995:24: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

./regexp_nfa.c:4014:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

./regexp_nfa.c:4014:21: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

./regexp_nfa.c:4014:21: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

./regexp_nfa.c:4036:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

./regexp_nfa.c:4036:21: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

./regexp_nfa.c:4036:21: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

./regexp_nfa.c:4055:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

./regexp_nfa.c:4055:21: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

./regexp_nfa.c:4055:21: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

./regexp_nfa.c:4086:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

./regexp_nfa.c:4086:24: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

./regexp_nfa.c:4086:24: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

./regexp_nfa.c:4227:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

./regexp_nfa.c:4227:24: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

./regexp_nfa.c:4227:24: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

./regexp_nfa.c:4609:25: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

./regexp_nfa.c:4609:25: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

./regexp_nfa.c:4609:25: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

./regexp_nfa.c:4670:22: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

./regexp_nfa.c:4670:22: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

./regexp_nfa.c:4670:22: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

./regexp_nfa.c:4733:25: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

./regexp_nfa.c:4733:25: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

./regexp_nfa.c:4733:25: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

./regexp_nfa.c:4767:25: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

./regexp_nfa.c:4767:25: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

./regexp_nfa.c:4767:25: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

./regexp_nfa.c:4954:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

./regexp_nfa.c:4954:24: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

./regexp_nfa.c:4954:24: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

./regexp_nfa.c:5106:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

./regexp_nfa.c:5106:21: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

./regexp_nfa.c:5106:21: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

./regexp_nfa.c:5120:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

./regexp_nfa.c:5120:21: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

./regexp_nfa.c:5120:21: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

./regexp_nfa.c:5144:25: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

./regexp_nfa.c:5144:25: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

./regexp_nfa.c:5144:25: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

./regexp_nfa.c:5231:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

./regexp_nfa.c:5231:24: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

./regexp_nfa.c:5231:24: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

./regexp_nfa.c:5486:25: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

./regexp_nfa.c:5486:25: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

./regexp_nfa.c:5486:25: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

./regexp_nfa.c:5608:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

./regexp_nfa.c:5608:21: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

./regexp_nfa.c:5608:21: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

./regexp_nfa.c:5897:23: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

./regexp_nfa.c:5897:23: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

./regexp_nfa.c:5897:23: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

./regexp_nfa.c:5987:26: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

./regexp_nfa.c:5987:26: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

./regexp_nfa.c:5987:26: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

./regexp_nfa.c:6873:26: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

./regexp_nfa.c:6873:26: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

./regexp_nfa.c:6873:26: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

./regexp_nfa.c:6997:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

./regexp_nfa.c:6997:24: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

./regexp_nfa.c:6997:24: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

./regexp_nfa.c:7095:24: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]

if ((rex.reg_match == ((void*)0)))

~~~~~~~~~~~~~~^~~~~~~~~~~~~

./regexp_nfa.c:7095:24: note: remove extraneous parentheses around the comparison to silence this warning

if ((rex.reg_match == ((void*)0)))

~ ^ ~

./regexp_nfa.c:7095:24: note: use '=' to turn this equality comparison into an assignment

if ((rex.reg_match == ((void*)0)))

^~

=

2016-06-27

Windows Subsystem for Linux ひさしぶりに触ったらだいぶまともになってた

リリース直後だと apt-get update && apt-get upgrade でそのまま壊滅的に環境が壊れるという状態で話にならなかったのだが、

現状残っている問題点としては

あたり。

Mac 上で Linux サーバーで動くアプリを作ることが出来るぐらいには Linux サーバーで動くアプリを作れるようになっている気がする。

2016-01-27

ええ、最初は軽い気持ちだったんです。

ええ、最初は軽い気持ちだったんです。型もなくて簡単だからって…。phpをやるようになって から確かに気分は良かったんですよね。

でもそのうちphpだけじゃ足りなくなってくるんですよ。javascriptのような流行ものにも手を出したりして。そうするとcsshtmlだけなんかじゃもう物足りないんですよ。

そのうちpythonrubyなんていういわゆる”スクリプト系”ですか?流行のものにはほとんど手を出してしまっている状態で。コストが安いじゃないですか?手を出しやすいんですよね。

node.jp?やってましたね。あの頃みんなハマってましたよね。

だんだんそれらなしでは生活できなくなってしまって。立ち上げているのはほとんどCUI画面ですよね。

ええ、端末一つでは足りないのでtmuxscreenなんかのマルチプレクサを使ったりしてね、もう完全に中毒症状が出ていたんですよね。vimrcをいじるようにもなっていてね。一日中vimscript書いては悦に浸って、考えるとちょっとあれですよね。

そのころはいつでもやめられると思っていたんですよ。

でもjavac#に手を出してしまったんです。phpとかrubyなんかよりはやっぱり重量感がありますよね。IDEも何個も試してみたり、vimだけで環境を整えようとしたり、結構無茶しましたよね。

テストもいっぱい書いて、なんでこんな辛いことしてるんだろうとか。

そして、みんなそうなんのかもしれないけど、やっぱりc++に手を出すことになってしまって。もう強すぎて今までのものとは全然違いますよね。でもこの頃には副作用も出ていたんです。

あれオブジェクト指向ってなんだっけってね(笑)テンプレートリフレクション?混乱しますよね。でもだんだん慣れてくるですよね。もう後戻りできないところまで来ちゃったかなとか思いますよね。

今では中毒症状のせいか幻聴も聞こえてますね。モナドモナドって。なんか良くわからない言葉が聞こえてます

抜けられる自信は無いですね…。今でも一日に10時間以上はやっていますから…。

2015-12-22

最近vim偏重主義に思うこと

ここ2,3年くらい、Vimが妙に流行っている。はてブqiitaでもVim関連のページが出れば大量にブクマがつくし、「俺はVim派だから」みたいな発言大学だったりtwitterだったりでもみる。

しかしその実、世間に出回る「vim tips」みたいなのをみると、cやr,はたまたw,$,0,..など超がつくほど基本的ものしか載っていない。

なんでこんな常識的ものにこんなにブクマつくの???っていっつも驚く。

昔はvimに憧れるワナビーブクマをつけてるのではないかと思っていたが、どうやら今のネット界隈では「vim派」と言って通ぶることが一種ステータス?になっているのではないかと思うようになった。

ちょっと前に流行ったvim pluginブームもびっくりした。vimあくまでもIDEなんていらないスクリプトを書いたり、CUIでエディットしたい時に使うものだろう。

ものには使いみちというものがある。文章、少なくとも日本語Vimに向かないし、Javaの開発ならeclipseですらvimよりよっぽど生産性が高い。

vimにpluginなど入れて喜んでいる一部の人達をみると、やはりvimで通ぶっているだけではないかと思えてしまう。

.vimrcは長けりゃいいっていうものではない。それがemacsに対するvim美徳ひとつではなかったのか。

そもそも、vim人口が見かけ上増えているにもかかわらずemacs人口が増えていないのがおかしい。どうも最近vim派の人たちはemacsをあまりうまく使えていないようである。(俺のまわりだけかもしれないが)

昔のhackerはエディタ戦争なんて言いながらもお互い両方のエディタを使えたものだ。大体がshellでset -o viなんてしたら使いづらくて仕方がない。shellはctrl-aで先頭に戻るし、ctrl-rで履歴検索をするものである

そもそもエディタ戦争なんて洒落にすぎないんじゃないかと個人的には思っている。viEmacsは基本教養である。どちらかしかできないのは文盲のようなものである

いつからvim界隈はこんなに歪になってしまったのか。

vimvim言ってブクマしてるみなさん、vimtutorは起動したことありますか?Vim関連の記事100個ブクマするよりよっぽど有用です。

Do one thing and do it wellって知ってますか?一つのプログラムでなんでもしたいならwordかVSで十分です。無理してviを使う必要はないです。

俺はまだLinuxを使い始めて10年くらいだけれど、エディタvi(m)一筋だった。

それだけに、今のviを取り巻く環境は悲しい。

何がいけなかったのだろうか。

コメントをもらった。同意してくれる人がいてうれしい

あとvivimがうんぬんというブコメありましたが、逆に今日vivimを使い分けることがあるんでしょうか…?

(もちろんインストール直後のdebianとかだとvim.tinyしか入ってないけど)

普通/usr/bin/viってvim.basicを指してることが多いと思います。もしvim.tinyを指していたらごめんなさい。

てかaliasなりupdate-alternativesみたいなの使われたほうがいいのでは…?

id:akanehara増田はじめてだからよくわかんないけどブコメに返すのこれでいいの?)

いやね、俺はNeoなんちゃらとかなんちゃら.vimとかのプラグイン流行りまくってるのどうかと思うんよ。

vi使いたくてあんなゴタゴタした画面分割するならtmuxscreenで別タブにシェル開けばいいしそのほうが拡張性高いじゃん…っていう。

それかVSなりIntelliJで(ちなみに俺はeclipse使います微妙disったけど)

あとはSIGSTOP(てかSIGTSTPか)で止めるのもよい使い方だと思う。

とにかくこれからviなりunixを使い始める人達がああい害悪に影響されてほしくない。Neoほげほげよりtmuxとかctrl-zのほうがのちのちず~~~っと役に立つから

vi流行ること自体はいいと重いますemacsもっとはやって欲しいです。nanoは即update-alternatives --config editorするんで知りません

と思ったらなんかみなさんいろいろ考察してくださっていますが、今やviクラスタunixクラスタなのか…

なんてこったい

id:Lycoris_i

TeXは確実にGUIのほうが使いやすいよ。俺はTeXstudioだけど、シェアウェア買ってる人もいるね。特に仕事道具にしてる人は。

vimじゃあPDFからジャンプとかできないから校正の時とか使いづらいことこの上ない

id:FantasyZone3, id:lbtmplz

一理ある

id:SndOp

俺も割と同じ意見だよ。煽りとかじゃなく。

問題vim scriptelispに劣ってるところだと思う。

言語プラットフォームとしてみたときやっぱりemacsには一日の長があるよ

なのにpluginとか言って喜んでるのはなんか違うと思うなあ。

2015-11-25

http://anond.hatelabo.jp/20151124201002

pcブルーライト→f.luxをつかえ

携帯の画面が明るすぎる→screen dimmerをつかえ。iphoneは改造が必要だがdimmerとdarkenでFA

2015-05-22

What 'Good Kill' Gets Wrong About Drone Warfare

http://www.newsweek.com/2015/05/22/watch-drone-331949.html

In the opening scene of Patton (1970), the film’s namesake addresses a sea of troops about to be hurled onto World War II’s front lines in Europe and North Africa. General George S. Patton says, “Now, I want you to remember that no bastard ever won a war by dying for his country—he won it by making the other poor, dumb bastard die for his country.”

The film Good Kill, which comes out this week, depicts a lieutenant colonel delivering a similarly rousing speech to a group of recruits about to enter combat. Only this time it’s with drones. “Ladies and gentlemen,” he says, “the aircraft you’re looking at behind me is not the future of war; it is the here-and-fucking-now.”

The movie, written and directed by Andrew Niccol (Gattaca, Lord of War), provides a harrowing look at warfare’s newest frontier through the eyes of a fictional drone pilot. Major Tom Egan (Ethan Hawke), a former Air Force pilot yearning to fly again, spends 12 hours a day fighting militant groups like the Taliban from a dark, air-conditioned bunker in the Nevada desert—more than 7,000 miles away from the battlefield. Through prolonged close-ups on his computer screens, the audience is complicit, forced to watch as his strikes claim lives. When the camera turns, the audience sees Egan gradually unraveling from the stress. Joystick in hand, he surveils and strikes targets seen on a computer screen, racking up casualties. And then, after his shift, he trudges back to his home in Las Vegas, where his wife (January Jones), children and the challenges of domestic life await him.

Try Newsweek for only $1.25 per week

From World War II to contemporary conflicts, war films often highlight the humanity of soldiers, helping to connect civilians in the audience to the people and wars they once understood only in the abstract. Good Kill adds to this long cinematic tradition within the context of the U.S. drone program, a little-seen world filled with men and women at the forefront of modern warfare. “You can’t say you’re anti-drone,” Niccol tells Newsweek. “It’s like saying you’re anti-Internet.”

“The really exciting thing about working with Andrew [Niccol] is that he doesn’t really see this from a left-wing point of view or a right-wing point of view,” Hawke says. “He’s kind of coming at it as a humanitarian and a scientist.”

So how accurately does the film depict the lives and thoughts of these modern fighters? Newsweek reached out to a former drone operator, Brandon Bryant, to gauge how realistic the movie’s portrayal is and discovered that, in August 2013, early on in Good Kill’s production, he was contacted by a producer, who asked for his insights. Bryant critiqued an early version of the script, told his service stories and answered questions. But a few weeks in, he says, the producers became unresponsive.

This is nothing new to Hollywood insiders, who are used to the slow pace and false starts of independent filmmaking, but Bryant thinks the “snubbing,” as he refers to it, was because of a disagreement regarding one element in the script. Or rather, an element noticeably absent from it: the psychological impact of remote warfare on drone operators. “The psychological aspect is the most important part of this kind of film,” says Bryant. “Because what we’ve done is taken the warrior from the battlefield where...they’re no longer with their comrades.”

U.S. Air Force Maj. Casey Tidgewell (L) and Senior Airman William Swain operate an MQ-9 Reaper from a ground control station August 8, 2007 at Creech Air Force Base in Indian Springs, Nev. Ethan Miller/Getty

In 2005, Bryant was a University of Montana student struggling to pay his tuition and searching for any way out of Missoula. He agreed to give his friend a ride to a nearby Army recruiting office that summer and weeks later signed up to join the Air Force. After several months of testing and training at Lackland Air Force Base in Texas, Bryant was assigned to a windowless bunker on the periphery of Las Vegas, just like Hawke’s character in Good Kill. His job was to guide missiles to their intended targets via laser. He hated the work instantly, but, also like the film’s main character, Bryant knew he had to tough it out. In just six months during 2007, he says, he killed 13 people with four shots—some targets, others “collateral damage.”

He can recall every devastating detail of his first strike. Three men with rifles were walking along a road somewhere in Afghanistan; the two in front looked as if they were having an argument, while the third wandered a little behind them. Bryant says he had no idea who the men were, only that they were targets. Command ordered his team to aim a missile at the two men in front instead of the one in the back, astwo is better than one.”

by Taboolaby TaboolaSponsored LinksSponsored Links

Promoted LinksPromoted Links

RecommendedHuge Manta Ray Catch Angers ConservationistsKim Jong-un Assembles New ‘Pleasure Squad’ of Young WomenThe Beginning of the End of North Korea?The Full Beauty Photo Project: Big Women Bare AllWhen the smoke cleared, a crater appeared on Bryant’s screen, littered with the body parts of the two men. The third man lay on the ground, missing part of his right leg. “I watched him bleed out,” Bryant recalls. The third man’s blood, which on Bryant’s screen appeared white in infrared, drained from his body, pooled on the ground and cooled. “After a while, he stopped moving, and he became the same color as the ground.”

The horrors of his work soon wormed their way into Bryant’s subconscious. “I used to have a lot of trouble sleeping,” he says. “I just hated seeing my work when I closed my eyes.” This aspect of the job gets a nod in the film: As Egan retreats into himself and those he loves drift further away, he seeks comfort in vodka. Prolonged depression gives way to rage—Egan gets physically violent with his wife and angrily throws a bottle of liquor after a cashier makes a joke about his flight suit.

In 2011, nearly six years after joining the Air Force, Bryant turned down a $109,000 bonus and left. Upon exiting, he was presented for the first time with a report on his accomplishments: He was associated with 1,626 kills. “I felt sick to my stomach,” he says. “Civilians were being killed because leadership didn't care…. All they were doing was racking up tallies for their promotions.”

An MQ-9 Reaper takes off on a training mission August 8, 2007 at Creech Air Force Base in Indian Springs, Nev. Ethan Miller/Getty

Bryant’s guilt weighed heavily on his conscience. On a trip to Best Buy in late 2011, he used his military ID while paying for a video game. A young man behind him noticed it. “You served in the military? So did my brother. He served in the Marines and he killed, like, 30 people. How many people did you kill?” In front of a store full of people, Bryant responded, “If you disrespect the taking of another person’s life ever again, I will find you and kill you in front of your family.” He was asked to leave the store.

Most Shared. Venezuela Officials Suspected of Drug Trafficking Shares: 1.8k Dick Cheney’s Biggest Lie Shares: 955 Requiem for the Cryosphere: Huge Antarctic Ice Shelf Is About to Disintegrate Shares: 596 'Staying Up Late With Letterman': Our 1986 Profile Shares: 431 Why It’s Not Actually Raining Spiders in Australia Shares: 175 Most Read Court Ruling on Immigration Could Rock Obama, 2016 Race Taylor Swift Premieres 'Bad Blood' Video at Awards Show GMO Scientists Could Save the World From Hunger, If We Let Them Singing the End of 'Mad Men' Dick Cheney’s Biggest Lie It was after Bryant begrudgingly told a therapist this story that he finally agreed with her diagnosis: he had post-traumatic stress disorder (PTSD).

The issue of PTSD in drone operators is controversial. To someone outside the military, it might seem that a distinction should be made between those in combat who are on a conflict’s physical front lines and those operating on its technological front lines. But does such a distinction extend to remorse or guilt? Or to the difference between whether the blood that a soldier may feel is on his or her hands is there literally or just on a computer monitor?

Madeline Uddo, a psychologist and team leader of the PTSD clinical team at the Southeast Louisiana Veterans Health Care System, says PTSD can be diagnosed if a certain number of symptoms outlined in the Diagnostic and Statistical Manual of Mental Disorders—the guide used in psychiatry to diagnose mental disorders—are present. She notes that the manual’s fifth edition seems to cover the experience of drone operators. Furthermore, a Defense Department study from 2013 found that drone pilots experience many stress disorders, including PTSD, at the same rate as aircraft pilots.

Hawke and Niccol say that soldiers like the fictional Egan and the very real Bryant are essentially test subjects, and that what the military asks of them has “never been asked of a soldier before.” It’s an admission that Good Kill is in uncharted territory, but they avoid saying that Egan has PTSD, although Niccol calls what Hawke depicts in the film “an approximation” of PTSD.

According to Zev Foreman, a producer on the film, the creators were determined to leave Egan’s diagnosis open-ended so the audience is able to better interpret how it feels about the drone program. Or, as Foreman puts it, “[we’re] not making a statement particularly about anything while opening up a discussion about everything.”

Still, Bryant maintains that the filmmakers, in telling a drone operator’s story, have a responsibility to weigh in on the remorse that many of them face, something he feels Good Kill largely fails to do. “I wanted [them] to make a powerful movie, not just an entertaining one,” he says. “[They] wanted to make something akin to Top Gun with drones…. They’re doing what our society does—marginalizing the traumatic effects of personal experiences.”

While this back-and-forth could be chalked up to an outsider not understanding Hollywood’s rules, it indicates a bigger issue: Although troops can perform their duties 7,000 miles away from battle, that doesn’t mean they’re safe. And although drones allow us to see into any corner of the world at any time, when it comes to the psychological effects this type of fighting has on our soldiers, we're flying blind.

Bryant is currently in an inpatient program designed to help him cope with his PTSD. “When I go back to those memories and my emotions get high,” he says, “I feel rage or extreme depression. It’s helping me manage those emotions.”

2015-01-09

http://anond.hatelabo.jp/20150109094933

コマンドラインって何?

メモ帳プログラム書くような人のことを言ってらっしゃるの?



そもそも論コマンドラインってかターミナルから直接作業できるなら、

ターミナル自体IDEみたいなもんだと思って良くて、

screenとか使えば1つで書きながら片方でコンパイルテスト、みたいなことも可能なわけで、

そういうこときちんとなにしてるか覚えろよ、と言う意味だと思うんだけども?





あんたみたいなIDEから覚えちゃったバカのせいで、新しい言語には全く出来ない、IDEが変わったら何も出来ないただのIDEロボットが生まれしまったんじゃない?

2014-05-12

GNU Screen 4.2.0にしたら罫線表示がぶっ壊れた

原因はcjkwidthというパッチが取り込まれたことだった。.screen

cjkwidth off

という1行を加えれば以前と同じように表示される。これは一体何の役に立つの不思議だ。

cjk環境でのUTF-8のambiguous widthに対応するパッチらしいのだが、ONにすると罫線がぶっ壊れるが他に何も改善しない、

オプション気づき明示的にOffにしないとバグだとおもって嵌る。これは迷惑だ。

2013-07-11

映画に見るPCUIデザイン

ハリウッドSF映画に登場したPCモニター画面はこれまで何を写してきたのでしょうか?

The Vergeの記事『Tour Hollywood's craziest computer UIs, from '2001' to 'The Matrix'』によれば、WiredとWaxy.orgのライターキュレーターでもあるAndy Baio氏が、様々な古い映画から集めたコンピューターインターフェイススクリーンショットを1200枚以上公開してるそうです。

http://screen.waxy.org/screenshots/

主な映画タイトルはHackers, 2001, Alien, Jurassic Park, The Matrix, AI

などなど。

『(ハリウッドデザイナー映画一場面をさらに興味を引くように、"未来的"にするために取った、様々に異なった方法はとても魅力的です。』

It's a pretty fascinating look at the wildly different ways designers choose to make shots of a screen more interesting and "futuristic."

私が個人的に一番好きなUIデザインは、トップをねらえ!のように、意味のない円グラフや棒グラフが背景でピコピコしてるやつ。次点でHOSが起動してるところですねー。

2013-05-27

意訳

I’m not sure what I just watched.

「え、俺いま何見たの?」って感じですよ

Our new music video is totally yabai (“yavay”).

ヤバいでしょ。うちらのビデオ

Yabai?

ヤバいって?

Japanese slang for cool, dope, sick, ill. Fast, intense. What moves you. Yabai is yabai. There’s no other word to describe it.

日本語で、クールとかラリってるとか、病気とか、悪いって意味で……なんなんだろう。とにかく「ヤバいヤバい」としか言えないんですよ

Sort of like kawaii?

cawaiiというのとは、違うの?

No no, kawaii is only for “cute” things. Yabai is for awesome things. Bite into piping-hot pizza, it tastes yabai. Once a good DJ takes the

stage, the club gets yabai. Funky Kota is totally yabai.

違う違う。cawaiiは「可愛いもののことで、yabayは「凄い」もののこと。例えば、凄い熱いピザをガブっと食べたりすると、味が「ヤバい」。良いDJプレイ

したりすると、そのクラブが「ヤバい」。そしてFunky Kotaは、全体的に「ヤバい

You’re losing me again.

ますます意味がわかりません(笑)

Funky Kota is a new style of rave and house music from Indonesia. Over there they call it Dangdut, but it’s also contracted as Funkot. The beats

are hyper fast, usually around 180 to 200 BPM, like happy hardcore except with more vocal samples. “Are you ready!” “Hey DJ!” That kind of

stuff. Except to Japanese ears, it sounds like “TICCCKKEE!” It doesn’t mean anything but it gets you pumped up.

Funky Kota」は、インドネシアから来た新しいダンスミュージックで、現地では「Dangdut」ってよばれてるんですけど、同じ様に縮めて「Funkot」とも呼ばれ

てるんです。テンポが凄く速くて、BPMが、大体180から200くらい。ボイスサンプルをもっと使いまくるハッピーハードコアって感じで“Are you ready!” “Hey

DJ!”とかそういうのなんだけど、日本人の耳には「ティッケー!」って聞こえて、全然意味はわかんないんだけど、凄くアガるんですよ。

What’s the Funky Kota scene like in Japan?

日本Funky Kotaシーンって、どんな感じ?

Mandokoro Takano, AKA DJ Jet Baron pioneered the craze back in 2009 on a radio talk show with the rapper Utamaru from Rhymester. He layered Funky

Kota bass lines and samples over J-pop, folk tunes and old super hero theme songs. Now he’s remixing our stuff. Very yabai.

高野政所さん(DJ Jet Baron)が、2009年ラッパーライムスター宇多丸さんのラジオから流行らせました。Funky KotaベースラインにJ-POPとかフォーク

ングや昔の特撮番組主題歌サンプリングを重ねたんです。その高野政所さんが、いまうちらの曲をリミックスしてくれてるんですけど、凄く「ヤバい」です

So this is a new direction for the group? Your older songs are conservative as far as idol music go.

これは、グループにとって新しい試みなんじゃない? これまでの君たちの曲って、正統派のアイドルソングって感じだよね?

We were in before AKB48, playing free shows in Akihabara and making a name for ourselves. The current idol culture didn’t exist back in 2006.

AKB48’s rise to fame set the standard for all other acts to follow. They made idols yabai. Now you need to have a hook to stand out from the

crowd.

うちらはAKB48より以前から秋葉原無料ライブをやって名前を売ってきたんです。でもいまみたいなアイドル文化は、2006年より以前には無かった。AKB48

が売れて、それがスタンダードになったんです。彼女たちはアイドルの「ヤバい」を作った。でもいまみんなが求めてるのは、そういうのを抜け出す何かだと思

う。

And you’re carving out a nice niche with Funkot. You’ve played over 600 shows but are still underground. What’s the goal of the unit?

そして君たちは、Funkotでニッチ鉱脈を掘り当てた。これまで600回以上もライブをやって、それでも地下アイドルのままだった君たちにとって、これはゴール

と言って良いのかな?

If AKB are the heroines of the idol world, then we’re the heels. We belong just outside the mainstream. Anything too popular loses its edge.

Being on a prime-time variety show like other Top 40 groups would rob us of our essence. But we’d thrive on a late night comedy program!

AKBヒロインなら、うちらは悪役。メインストリームからは外れてます。あんまり有名になりすぎると、エッヂがなくなっちゃうじゃないですか。他のTop 40の

グループみたいにゴールデンバラエティに出ても、うちらの味は出せない。でも深夜のお笑い番組だったら、うちらヤリますよ。

Those shows like to put their guests in bikinis. Funkot club dancers tend to be dressed very sexymaybe you could play on that angle?

そういう番組って、ゲストビキニを着せたりするよね。Funkotのダンサーも、かなりセクシー衣装を着てるけどーー君たちも、そういうの、着る?

No, unlike some other groups we don’t do the bathing suit thing anymore! We want to keep our act more pure, more genuine.

いや、他のグループとは違って、うちらは水着とか着ませんから! うちらはうちらのやることを、純粋に突き詰めてくだけです。

Have you changed over the years?

ずっとやってきて、変わってきたことってある?

We’re more hyper than ever! If anything, we’ve learned how to be humble. We used to expect to be pampered. I mean, that’s one of the perks of

being an idol, right? But now we aim to emulate the humble shrimp – head down, waist bowed in respect.

何かあるとしたら、謙虚になることですね。最初はうちら、もっとちやほやされると思ってて、それがアイドル特権だと思ってたんだけど、いまはもう、エビ

みたいに謙虚になるのが目標ですからーーエビみたく頭を下げて、腰を折ってお辞儀しまから

What makes Hyper Yoyo hyper?

何がハイパーヨーヨをハイパーにするの?

Non-stop adrenaline! If we’re not having a blast on stage, then how can the audience enjoy themselves?

まらないアドレナリン! うちらがステージで爆発しなかったら、お客さんも盛り上がれないでしょ?

With the advent of live streaming sites such as Nico Nico Live, more people are content to stay at home rather than venture out to events.

ニコ生みたいなサイトの出現で、ライブに来るより、家で満足しちゃう人の方が多くなっちゃったんじゃない?

Funky Kota isn’t something you listen to, it’s something you experience! The sound reverberates through your body. Watching through the

computer screen dulls the impact. The monitor stands between you and the party.

Funky Kotaは、聞くものじゃなくて体験するものです! 音が身体で反響するんですよ。この衝撃は、パソコンモニターで見てたんじゃわからないですからモニター邪魔

Even with that buffer, your new music video is pretty intense!

そんな邪魔があっても、君たちの新しいPVは、かなり激しかったよ!

Oh yeah, that’s a perfect example of what our concerts are like! It was filmed inside Robot Restaurant, the most yabai place in Japan. 10

billion yen to build, all of it going into colored light bulbs and makeup for the robots.

おおぅ。あれって、うちらのギグそのものなんですよ! ロボットレストラン撮影したんです。日本で一番ヤバいスポット。あのロボットや照明を作るのに100億円かけたって話です。

It’s been all over the news since it opened last summer.

それって、去年の夏にオープンしてから、かなり話題になってるよ

Seriously? We hope the video shows people how yabai Japan is. See, the Japanese take on Funkot is different from Indonesia, so the originators

are starting to reverse-import it. Even the way we dance isn’t authentic. It’s half cobbled together from YouTube clips, half improv.

本当に? あのPVを見て、日本いかヤバいところか知ってほしいですね。日本のFunkotは、インドネシアのとは違ってると思うんだけど、最近本家のそっちの方に、逆輸入され始めてるそうなんです。うちらはダンスも本場とは違ってるんだけど、あれって急いでyoutubeクリップから作ったのと改良したのが半々なんです。

It’s as if we’re going full circle, with DJs in Indonesia remixing copies of their original tracks…

それって円になってるみたいだね。インドネシアDJが、彼らの曲のコピーを更にリミックスするという……

Next step, Jakarta! We want to party with the local club kids and experience the scene firsthand. Get the authentic experience.

Imagine, our first Asian tour. How yabai would that be!?

次の目標ジャカルタ! 現地のクラブキッズパーティーして、現地のシーンを直に体験したい。本物を体験したい。想像してくださいよ。うちらの最初アジアツアーですから。相当、ヤバいですよ!?

2012-01-05

How to make digital camera battery more durable

Digital camera battery is the key for the key, second in importance only lens I’m afraid, and in order to photograph in your heart, a powerful battery to provide power as a follow-up is essential. But even the best battery time, if not properly carry out maintenance and maintenance, will not take long to lose the strong power, so battery maintenance is very important.

Battery Maintenance

For a (section) digital camera battery for the duration of use, not just its quality, power on, in fact, the use of operations with the user also has great relevance. Most photographers are used after every use of the camera on the camera bag inside, or on the cupboard, took out the battery is not kept separately, this approach sounds fine, but not conducive to battery protection.

If more than 15 days do not usually use the camera, it is best to remove the battery from the camera inside the store alone, save the environment, it is best to dry and cool place, and do not store the battery together with metal objects.

According to our survey, you can buy in the market most digital cameras use lithium batteries, it is relatively easy to store. The only caveat is that if not used for long, preferably at intervals of 2 months to activate a battery, which is the charge and discharge time, this can effectively extend battery life.

As for the Ni-MH battery 5, the most annoying is the memory effect, this effect will reduce the overall battery capacity and the use of time, and as time goes on, less and less stored charge, the battery will consume the more you have to faster. Therefore, we should try to run out of power rechargeable, each charge must be sufficient to power the most full.

If you go out, the temporary use of alkaline batteries, we must remember that time out, or when unused for long periods, the battery is easy to Tangshui corrosion circuit, the digital camera battery could not escape the destiny scrapped.

For users of alkaline batteries, already mentioned above, remember the point is finished using the digital camera, remove the battery must remember to avoid the phenomenon of cell sap and damage the machine.

As for the use of rechargeable nickel-metal hydride batteries and lithium users. Battery charge is very particular about, bought back the batteries are generally very low or no power consumption, the first charge must be adequate. Lithium battery charging time is generally longer than 8 hours, while the Ni-MH battery charging time is generally more than 16 hours. To achieve best results, that is, the battery has reached its maximum capacity, generally more than 3 times repeated charge-discharge can. Battery with three times, the best opportunity to find a completely exhausted battery to charge again, try not to charge the battery when there are remnants of repeated charge, or will shorten battery life. After the battery charge is generally more heat, it is best to be cool and then into the camera battery.

But note that lithium batteries because there is no memory effect, so do not discharge, otherwise it will damage the digital camera battery structure, loss of battery life.

In addition, in order to avoid the loss of electricity, the use of nickel-metal hydride battery user, charging is completed, remove the battery, do not let the battery contact with the conductor while the positive and negative poles, for example, do not use your fingers touch both ends of the battery. The use of lithium users should try to keep the camera inside the battery positive and negative battery contacts clean, if necessary, wipe with a dry cloth and then gently wipe the battery.

Also note that, even if the user is to use lithium batteries, digital camera in a long time when not in use, should be completely discharged, remove the battery, stored in a dry, cool environment. The other thing to note is that both the nickel-hydrogen batteries or lithium batteries using the user, it is best not to have a charged battery on the purse, pocket, bag or container with metal objects, in order to prevent short-circuit .

Digital camera battery power Dafa:

1, to avoid frequent use of flash: If you are not professional photographers, then, except in the invisible fingers of the night, the light intensity of an ordinary day for the average digital camera, it is enough.

2, try to avoid unnecessary zoom operation: zoom the camera lens stretched it out a reduction, is power digital camera battery. You can move the pace of hyperactivity, with “artificial zoom” approach instead of “camera zoom” to save power.

3, Do not let the screen has been lit: If the case of small power, can turn off the LCD screen, use the viewfinder to adjust the picture composition, is for a digital camera, LCD should be considered the most power-hungry components, general digital camera, LCD screen after closing time can be used when the original length of about 3 times.

4, less shooting and video: minimize the use of multi-shot feature and video capture video, as the completion of these functions is to use the built-in buffer body to temporarily save the screen shot, the power consumption a lot.

5, should not frequently open, shut down: Many users know that the display stays lit is power, so in order to save electricity use to frequent opening and shutdown. In fact, frequently open, shut down the electricity wasted consumption than bright display even more, especially for larger diameter lenses, but also requires a substantial expansion of the camera, the switch is power. Most digital cameras have automatic shutdown option, this setting should not be set too short, otherwise easily lead to frequent opening and shut down. Of course, frequent artificial opening, shut down and should be avoided.

6, optical image stabilization not normally open: Optical image stabilization is by driving the lens or image sensor pack components, offset by the subject matter images and the relative motion between the sensor achieved. Either way the optical image stabilization, would result in no small power consumption, in particular some models can be anti-shake mode is set to “always on” so that power loss will be caused by the more powerful. To this end, we have a good scene in the light should turn off the optical image stabilization feature, you must use, should also be less “always on” mode.

___________________________________________________

http://www.gobatteryonline.com/canon-powershot-sd600-battery-charger-gose.html

http://www.gobatteryonline.com/canon-powershot-sd630-battery-charger-gose.html

http://www.gobatteryonline.com/canon-nb-7l-digital-camera-battery-gose.html

2011-11-08

Thunderbird から Outlook 2007 にメールを移行

やー。面倒でした。

古い情報だと Outlook Express を経由しろと書いてあるので、後継であるらしいWindows Live Mail を経由して(Windows Live Mail からエクスポートする方法で)

Outlook に移行したのだが、どういうわけか宛名が文字列として移行されてしまい、xxx@example.com というメールアドレスの移行ができなかったんです

で eml → msg もしくは pst 形式への変換ソフトを探すのですが、無料ものが見つからなくてあんまり情報もありませんでした。が、ありましたよ!お兄さん。

これなら、msg ⇔ eml の相互変換ができますです

MrMAPI.exe

http://mfcmapi.codeplex.com/

ヘルプはっときますね。

====

MAPI data collection and parsing tool. Supports property tag lookup, error translation,
   smart view processing, rule tables, ACL tables, contents tables, and MAPI<->MIME conversion.
MrMAPI currently knows:
  3916 property tags
   801 dispids
    35 types
    58 guids
   148 errors
    27 smart view parsers

Usage:
   MrMAPI -?
   MrMAPI [-Search] [-Dispids] [-Number] [-Type <type>] <property number>|<property name>
   MrMAPI -Guids
   MrMAPI -Error <error>
   MrMAPI -ParserType <type> -Input <input file> [-Binary] [-Output <output file>]
   MrMAPI -Flag <flag value> [-Dispids] [-Number] <property number>|<property name>
   MrMAPI -Rules [-Profile <profile>] [-Folder <folder>]
   MrMAPI -Acl [-Profile <profile>] [-Folder <folder>]
   MrMAPI [-Contents | -HiddenContents] [-Profile <profile>] [-Folder <folder>] [-Output <output directory>]
          [-Subject <subject>] [-MessageClass <message class>] [-MSG] [-List]
   MrMAPI -ChildFolders [-Profile <profile>] [-Folder <folder>]
   MrMAPI -XML -Input <path to input file> -Output <path to output file>
   MrMAPI -FID [fid] [-MID [mid]] [-Profile <profile>]
   MrMAPI -MAPI | -MIME -Input <path to input file> -Output <path to output file> [-CCSFFlags <conversion flags>]
          [-RFC822] [-Wrap <Decimal number of characters>] [-Encoding <Decimal number indicating encoding>]
          [-AddressBook] [-Unicode] [-Charset CodePage CharSetType CharSetApplyType]

All switches may be shortened if the intended switch is unambiguous.
For example, -T may be used instead of -Type.

   Help:
   -?   Display expanded help.

   Property Tag Lookup:
   -S   (or -Search) Perform substring search.
           With no parameters prints all known properties.
   -D   (or -Dispids) Search dispids.
   -N   (or -Number) Number is in decimal. Ignored for non-numbers.
   -T   (or -Type) Print information on specified type.
           With no parameters prints list of known types.
           When combined with -S, restrict output to given type.
   -G   (or -Guids) Display list of known guids.

   Flag Lookup:
   -Fl  (or -Flag) Look up flags for specified property.
           May be combined with -D and -N switches, but all flag values must be in hex.

   Error Parsing:
   -E   (or -Error) Map an error code to its name and vice versa.
           May be combined with -S and -N switches.

   Smart View Parsing:
   -P   (or -ParserType) Parser type (number). See list below for supported parsers.
   -B   (or -Binary) Input file is binary. Default is hex encoded text.

   Rules Table:
   -R   (or -Rules) Output rules table. Profile optional.

   ACL Table:
   -A   (or -Acl) Output ACL table. Profile optional.

   Contents Table:
   -C   (or -Contents) Output contents table. May be combined with -H. Profile optional.
   -H   (or -HiddenContents) Output associated contents table. May be combined with -C. Profile optional
   -Su  (or -Subject) Subject of messages to output.
   -Me  (or -MessageClass) Message class of messages to output.
   -Ms  (or -MSG) Output as .MSG instead of XML.
   -L   (or -List) List details to screen and do not output files.

   Child Folders:
   -Chi (or -ChildFolders) Display child folders of selected folder.

   MSG File Properties
   -X   (or -XML) Output properties of an MSG file as XML.

   MID/FID Lookup
   -Fi  (or -FID) Folder ID (FID) to search for.
           If -FID is specified without a FID, search/display all folders
   -Mid (or -MID) Message ID (MID) to search for.
           If -MID is specified without a MID, display all messages in folders specified by the FID parameter.

   MAPI <-> MIME Conversion:
   -Ma  (or -MAPI) Convert an EML file to MAPI format (MSG file).
   -Mi  (or -MIME) Convert an MSG file to MIME format (EML file).
   -I   (or -Input) Indicates the input file for conversion, either a MIME-formatted EML file or an MSG file.
   -O   (or -Output) Indicates the output file for the convertion.
   -Cc  (or -CCSFFlags) Indicates specific flags to pass to the converter.
           Available values (these may be OR'ed together):
              MIME -> MAPI:
                CCSF_SMTP:        0x02
                CCSF_INCLUDE_BCC: 0x20
                CCSF_USE_RTF:     0x80
              MAPI -> MIME:
                CCSF_NOHEADERS:        0x0004
                CCSF_USE_TNEF:         0x0010
                CCSF_8BITHEADERS:      0x0040
                CCSF_PLAIN_TEXT_ONLY:  0x1000
                CCSF_NO_MSGID:         0x4000
                CCSF_EMBEDDED_MESSAGE: 0x8000
   -Rf  (or -RFC822) (MAPI->MIME only) Indicates the EML should be generated in RFC822 format.
           If not present, RFC1521 is used instead.
   -W   (or -Wrap) (MAPI->MIME only) Indicates the maximum number of characters in each line in the
           generated EML. Default value is 74. A value of 0 indicates no wrapping.
   -En  (or -Encoding) (MAPI->MIME only) Indicates the encoding type to use. Supported values are:
              1 - Base64
              2 - UUENCODE
              3 - Quoted-Printable
              4 - 7bit (DEFAULT)
              5 - 8bit
   -Ad  (or -AddressBook) Pass MAPI Address Book into converter. Profile optional.
   -U   (or -Unicode) (MIME->MAPI only) The resulting MSG file should be unicode.
   -Ch  (or -Charset) (MIME->MAPI only) Character set - three required parameters:
           CodePage - common values (others supported)
              1252  - CP_USASCII      - Indicates the USASCII character set, Windows code page 1252
              1200  - CP_UNICODE      - Indicates the Unicode character set, Windows code page 1200
              50932 - CP_JAUTODETECT  - Indicates Japanese auto-detect (50932)
              50949 - CP_KAUTODETECT  - Indicates Korean auto-detect (50949)
              50221 - CP_ISO2022JPESC - Indicates the Internet character set ISO-2022-JP-ESC
              50222 - CP_ISO2022JPSIO - Indicates the Internet character set ISO-2022-JP-SIO
           CharSetType - supported values (see CHARSETTYPE)
              0 - CHARSET_BODY
              1 - CHARSET_HEADER
              2 - CHARSET_WEB
           CharSetApplyType - supported values (see CSETAPPLYTYPE)
              0 - CSET_APPLY_UNTAGGED
              1 - CSET_APPLY_ALL
              2 - CSET_APPLY_TAG_ALL

   Universal Options:
   -I   (or -Input) Input file.
   -O   (or -Output) Output file or directory.
   -F   (or -Folder) Folder to scan. Default is Inbox. See list below for supported folders.
           Folders may also be specified by path:
              "Top of Information Store\Calendar"
           Path may be preceeded by entry IDs for special folders using @ notation:
              "@PR_IPM_SUBTREE_ENTRYID\Calendar"
           MrMAPI's special folder constants may also be used:
              "@12\Calendar"
              "@1"
   -Pr  (or -Profile) Profile for MAPILogonEx.
   -M   (or -MoreProperties) More properties. Tries harder to get stream properties. May take longer.
   -No  (or -NoAddins) No Addins. Don't load any add-ins.
   -On  (or -Online) Online mode. Bypass cached mode.
   -V   (or -Verbose) Verbose. Turn on all debug output.

Smart View Parsers:
    1 Additional Ren Entry IDs Ex
    2 Appointment Recurrence Pattern
    3 Conversation Index
    4 Entry Id
    5 Entry List
    6 Extended Folder Flags
    7 Extended Rule Condition
    8 Flat Entry List
    9 Folder User Fields Stream
   10 Global Object Id
   11 Property
   12 Property Definition Stream
   13 Recipient Row Stream
   14 Recurrence Pattern
   15 Report Tag
   16 Restriction
   17 Rule Condition
   18 Search Folder Definition
   19 Security Descriptor
   20 SID
   21 Task Assigners
   22 Time Zone
   23 Time Zone Definition
   24 Web View Persistence Object Stream
   25 Nickname Cache
   26 Encode Entry ID
   27 Decode Entry ID

Folders:
    1 Calendar
    2 Contacts
    3 Journal
    4 Notes
    5 Tasks
    6 Reminders
    7 Drafts
    8 Sent Items
    9 Outbox
   10 Deleted Items
   11 Finder
   12 IPM_SUBTREE
   13 Inbox
   14 Local Freebusy
   15 Conflicts
   16 Sync Issues
   17 Local Failures
   18 Server Failures
   19 Junk E-mail

Examples:
   MrMAPI PR_DISPLAY_NAME

   MrMAPI 0x3001001e
   MrMAPI 3001001e
   MrMAPI 3001

   MrMAPI -n 12289

   MrMAPI -t PT_LONG
   MrMAPI -t 3102
   MrMAPI -t

   MrMAPI -s display
   MrMAPI -s display -t PT_LONG
   MrMAPI -t 102 -s display

   MrMAPI -d dispidReminderTime
   MrMAPI -d 0x8502
   MrMAPI -d -s reminder
   MrMAPI -d -n 34050

   MrMAPI -p 17 -i webview.txt -o parsed.txt
アーカイブ ヘルプ
ログイン ユーザー登録
ようこそ ゲスト さん