1 | 2 | 3 | 4 | 5 |最初 次ページ >>
2016-07-25 08:45:58

EclipseのGit関連操作のショートカットを作成する

テーマ:Windows

Eclipse+Git(EGit)を使った開発環境を使うことが多いのですが、Eclipse上でGit操作をするとなるとGUI上での操作が多くなります。

メニューからチーム→コミットとか、チーム→切り替え→ブランチ選択とかするのって操作が頻繁になると結構面倒になったりもします。

ということで、こういったGit関連操作に対してショートカットを設定する方法のまとめです。
(書いている内容はGitに限ったことではなく一般的なEclipseのショートカットキーを設定する方法です)
使っているEclipseのバージョンは4.4(Luna)です。



Eclipseのショートカットを変更する


通常、Eclipseでショートカットの設定を変更したい場合は、「ウィンドウ」→「設定」メニューから「一般」の中にある「キー」の項目にて変更ができます。

フィルタ欄にGitとかいれるとGit関連の操作がずらっと表示されるので、それに対してショートカットキーを割り当てていきます。


Eclipseショートカット設定-1


デフォルトで設定されているのはコミットぐらいなのですが、このショートカットキーのCtrl+#って実際使えないので、使いたい関連操作にショートカットキーを割当てなおしたほうが良さそうです。

割当てたい操作をクリックし、下のバインディング欄に実際にコマンドを入力します。

そして、「場合」のプルダウンメニューからどの操作中にキー操作が行われてたら反応するかを決定します。
下記の場合は、PHPソースの編集中(PHPファイルとして保存しているものが対象)にCtrl+Alt+Cのキーを押すとコミットを実行するといった具合です。


Eclipseショートカット設定-2


あとは、よく使う操作にショートカットキーを好きに割り当てていきます。
個人的には、コミット以外は


・ ブランチ(ブランチの切り替え)
・ ヒストリーに表示
・ プル
・ マージ


当たりがよく使うのでショートカットキーを割当ててます。
GUIだとメニューを辿っていったり表示されるまでの若干のタイムラグがストレスだったりもしますしソース書く上ではキーボード操作が中心なので、そこで完結する操作が出来てしまったほうがかなり開発効率が上がるのではないかと思います。




いいね!した人  |  コメント(0)  |  リブログ(0)
2016-06-29 08:47:16

40代のエンジニアの働き方を考える

テーマ:エンジニア魂

まぁ、まだ40にはなっていないわけですけど目の前に差し迫ってきているわけで、20代、30代と色々働き方というのは環境やポジションによって変化してくるもので、当然40代ともなると面倒なことも増えだしてなかなかやりたいこともできないといったことも増えてきます。


その中でどういった仕事の仕方をしないといけないのかまたは強いられてしまうのか、誰しも平等に年を取っていく中でそうなったときにどうしておけばいいのか考えておくことは結構大切なことだなと思ったりします。



自分の領域を見つけておく


1つはなんかしら自分がそこで自信をもって仕事をできる領域を作っておくことが大事なのではないかと思うわけです。

エンジニアとしてなら当然技術的な分野になりますけど、Webやネットワークといった大きな領域だけでなく、プログラミングやOSやミドルウェアなど特定領域において深い知識を持っているとよりその武器が強力になっていきます。


ただ、こういった技術的な要素は時代の流れと共に廃れてしまったりして10年後には使い物にならないといったものが多かったりするんですけど、それが何なのか見極めることがとても難しいということです。

無難にメジャーなプログラミング言語やシェアの大きいソフトウェアを選択しておくのはいいと思いますけど、当然母数も多いので凡庸の中に埋もれていくリスクもあったり、次にこれが来る!と賑やかされているバズワードに踊らされていると数年後にあの技術はいったい何だったんだろうということにもなったり。


若いころなら色んな技術を身に着けておきながら時代の変化とともに綱渡りしていくのが頭もまだ柔軟だったり体力面でもカバーできたりもしますのでそれほど難しいことではないのですが、歳を重ねてくると新しい知識を身に着けてくることがしんどくなってきたり、自分が歩んできた領域をなかなか捨てきれずに固執してしまったりで簡単ではないケースもあります。

一番厄介なのは、会社の業務指示によって担当する案件が決まり、その中で身につける知識というものも取捨選択できない場合があるというもので、自分が入社当時のウェブ全盛期であってもまだホストサーバーいじったりしている部署に配属された同僚もいたりして、どうやっても現状ではその知識を応用するのが無理という状況に陥る人も多いんじゃないかと思います。


自分の能力が十分に発揮できる領域を見つけておくとそこで仕事をするということに集中すればよくなりますし、取捨選択もしやすくなります。

取捨選択するというのは要は仕事を選べるようになるということではあるんですけど、それは傲慢に仕事をするということではなく、何でもかんでも仕事をするというのは時間的な制約や能力面で当然できないのできちんと自分の力をフルに発揮できる場所というのを理解しておくということです。


まぁ、個人的にはあまりそういう風にはなりたくないと思ってはいますけど、特定分野の領域を見つけておけばその分野において例えば技術的な現場から離れたとしてもそれまでの知識の惰性で仕事をすることはできたりします。

要するにしゃべりだけで食ってけるみたいなところはあるんですけど、それは会社から与えられるポジションとかによってそうせざるを得ない場合もあったりして現場に固執したいなら結構いばらの道を行かなくてはならかったりもします。



やりたいことに注力するための術を身につける


歳を重ねることに社内のポジションというものも変化してきて、それに伴って色々面倒な仕事も増えてきます。

やりたくない打ち合わせや資料作成や調整事項が増えてきたりして、それによって本来やりたいことへ割く時間も削がれてきますので、少ない時間の中で自分がやりたいことや能力が発揮できる分野へ注力するための術を身につけないと押し流されてしまいます


結局のところ、35歳あたりのエンジニアの定年説とかっていうのは、その人の能力や体力によるものというよりは、会社の組織の中で与えたポジションによってその人が本来力を発揮できる場所からどんどん遠ざけ、つぶしてしまっている結果によるんじゃないかと思ったりするわけですけど、それにあがらうためにはかなり要領よく仕事をしないといけなくなります。

まぁ、あがらわず流されるというのも一つの選択ではありますが。

自分の周りを見ても自分より年上でまだ現場の一線に立っているという人はほとんど見かけません。

大抵は、管理職となりプロジェクトのマネジメントや日々報告資料の作成に忙殺されていたりして、その分与えられる役割や所得なども当然多くはなっているのかもしれませんけど、その仕事を自分がやりたいかと言われればNoだったりもするのであがらう術を見つけるのに四苦八苦したりもしているわけです。

こういったことは、先ほど書いたような仕事を取捨選択することもそうですし、今まで自分がやりたかったことというものを改めて見直して、その中でも特に注力したい部分を切り分けていく必要があります。

単にプログラミングがしたいというところから、どのレイヤを担当するのか、それ以外は誰に任せるのかといった外せない領域と捨ててもいい領域というものを割り切らないといけなかったりもします。
そうした割り切りの中でも、メンバーのリソースを見ながら担当を決めたり、その人の教育過程も考慮してアサインしようといったマネジメントの視点でのコントロールも必要になってきて、単に自分の領域を守るというだけでなく全体を俯瞰して考えておかないとなかなか上も自分がそのポジションにいることに納得してくれなかったりするので難しいところです。


結局のところ経験と共に会社から与えられるポジションによって面倒な仕事というのは増える一方であったりもするわけで、集中してやりたいことをやる時間というのはかなり細切れになってきます。

合間合間に打ち合わせが入ったり、部下の管理に時間を割かれたり、資料の作成をせかされたり。

おのずとやれることも少なくなってきますし、やることを固めていかないとストレスになるだけなので、自分がやらなくてもいいことを任せられる人が近くにいる、そういうポジションについておくことも重要になってくると思ったりもします。

まとめ


これが自分の領域だという場所を見つけておかないと、なかなか40代にもなって仕事が楽しいで働けないんじゃないかと思います。

まぁ、結婚して子供がいたりすると収入面で仕事を辞めれない状況にもなってくるので、仕事に楽しさなんて求めてる場合じゃないってなりますし、そもそも仕事することが単に収入を得るためだけというような考え方にも偏ってきたりもしてきます。


そういう状況に陥らないためにも、不得意なところで勝負したり、やりたくないことを我慢しながら仕事をするのではなく、ここでなら力が発揮できる領域というものを若いうちから探しておくというのが40代になっても後悔しない仕事の仕方になってくるかもしれません。

なので、20代、30代のうちから自信をもって勝負できる場所、楽しめる場所というものを模索していくのって大事なことではないかと思います。





2016-06-15 08:20:06

PDFを他のファイル形式に簡単に変換できるpoppler-utils

テーマ:Linux

元ネタとしては、以前に書いた「Apache Tikaを使ってドキュメントの中身を取り出すPHPプログラム 」にてPDFファイル内のテキストを抽出しようとしたところ、PDFのセキュリティ関連の設定によって中身がうまく抽出できないケースがあったりして、Linux環境上で他にPDFの中身を取り出す方法は無いものかと調べていたらpoppler-utils内に含まれるpdftotextコマンドでうまく取り出せたよ、って話になります。



PDF内のテキストを取り出す


先に結論を書きましたが、pdftotextコマンドを使えばPDFファイル内のテキスト文を取り出すことが可能です。

pdftotextコマンドはpoppler-utilsというパッケージに含まれるため、存在しない場合はyum経由などでインストールしておきます。


# yum install poppler-utils

poppler-utilsにはpdftotext以外にもpdfinfoやpdftohtmlやpdftoppmコマンドなどが含まれています。

余談ですけど、pdf2psコマンドとかもあったりするのですが、こちらはpoppler-utilsパッケージ付属のものではなくghostscriptパッケージ付属のものです。


で、本題ですがPDFファイルからテキストデータを抽出したい場合は下記のように実行します。


$ pdftotext -raw hoge.pdf hoge.txt

上記によりhoge.pdfファイル内のテキストデータをhoge.txtに書き出してくれます。

PDFを開く際にパスワードをつけている場合は


$ pdftotext -upw yourpasswd hoge.pdf hoge

のようにパスワードを指定すれば開けたりします。

また、下記のようにセキュリティの設定をきつくしても抽出はできました(文章のメタデータにアクセスできないと書かれているのに何故)。


PDFセキュリティ設定



その外に便利なpoppler-utilsのコマンドたち


pdftotext以外にも幾つか使えそうなコマンドがあります。

PDFファイルの概要を知りたければpdfinfoコマンドが便利です。


$ pdfinfo test.pdf
Title:          ほげほげ計画書
Author:         itboy
Creator:        PowerPoint 用 Acrobat PDFMaker 11
Producer:       Adobe PDF Library 11.0
CreationDate:   Thu Apr 21 10:01:28 2016
ModDate:        Thu Apr 21 10:09:55 2016
Tagged:         yes
Pages:          5
Encrypted:      yes (print:no copy:yes change:no addNotes:no)
Page size:      822.12 x 538.68 pts
File size:      308122 bytes
Optimized:      yes
PDF version:    1.6

オプションをつければPDF内のメタデータを取り出すことも出来ます。


$ pdfinfo -meta test.pdf 
-snip-
<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.4-c005 78.147326, 2015/04/27-13:03:03">
   <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
      <rdf:Description rdf:about=""
            xmlns:xmp="http://ns.adobe.com/xap/1.0/"
            xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/"
            xmlns:dc="http://purl.org/dc/elements/1.1/"
            xmlns:pdf="http://ns.adobe.com/pdf/1.3/"
            xmlns:pdfx="http://ns.adobe.com/pdfx/1.3/">
         <xmp:ModifyDate>2016-04-21T10:09:55+09:00</xmp:ModifyDate>
         <xmp:CreateDate>2016-04-21T10:01:28+09:00</xmp:CreateDate>
         <xmp:MetadataDate>2016-04-21T10:09:55+09:00</xmp:MetadataDate>
         <xmp:CreatorTool>PowerPoint 用 Acrobat PDFMaker 11</xmp:CreatorTool>
         <xmpMM:DocumentID>uuid:63c700ab-7219-4640-ac8d-8b4937b6a0dd</xmpMM:DocumentID>
         <xmpMM:InstanceID>uuid:5f189849-df3a-44ab-a78e-6c342c23d7fa</xmpMM:InstanceID>
         <dc:format>application/pdf</dc:format>
         <dc:title>
            <rdf:Alt>
               <rdf:li xml:lang="x-default">ほげほげ計画書</rdf:li>
            </rdf:Alt>
         </dc:title>
-snip-

PDFファイルをHTMLファイルに変換したい場合はpdftohtmlコマンド。

pdftotextの出力結果をHTML形式にしてくれるのかと思ってましたがそうではなく、PDFをHTML表示に変換してくれるコマンドとなってます。


$ pdftohtml hoge.pdf hoge
Page-1
Page-2
Page-3
Page-4

作成が完了するとHTMLファイルやPDF内で使われている画像ファイルなどが出力されます。


$ ls
hoge-1_1.png  hoge-2_2.jpg  hoge-3_2.jpg  hoge-3_5.png  hoge-4_2.jpg  hoge-4_5.png  hoge-4_8.png  hoge_ind.html
hoge-1_2.jpg  hoge-2_3.png  hoge-3_3.png  hoge-3_6.png  hoge-4_3.png  hoge-4_6.png  hoge-4_9.jpg  hoges.html
hoge-2_1.png  hoge-3_1.png  hoge-3_4.png  hoge-4_1.png  hoge-4_4.png  hoge-4_7.png  hoge.html

ただし、結果のHTMLはオリジナルのレイアウトとかけ離れたファイルになったりしますので、あくまでHTMLファイルに変換するといった場合にしか使えそうにありません。

場合によっては、PDF内の画像を取り出したいといった場合に便利なのかもしれませんが。


PDFを画像ファイルに変換したい場合はpdftoppmコマンド。

こちらはPDFファイルをPPM(Portable PixMap file format)形式の画像に変換してくれるものなんですが、オプションでPNG形式にも変換 できます。


$ pdftoppm -r 100 -png hoge.pdf hoge

-rオプションはDPIを指定できるので解像度を適当なものに指定しましょう(デフォルトは150みたいです)。

変換すると各ページごとに画像ファイルが出来上がります。


$ ls
hoge-1.png  hoge-2.png  hoge-3.png  hoge-4.png

オプションで開始・終了ページや切り取り位置の指定などもできたりします。

PDFファイルをPDF以外の形式で見せたい場合やファイルのサムネイルを作りたいといった場合に便利かもしれません。





いいね!した人  |  コメント(0)  |  リブログ(0)
1 | 2 | 3 | 4 | 5 |最初 次ページ >>

AD

Ameba人気のブログ

Amebaトピックス

      ランキング

      • 総合
      • 新登場
      • 急上昇
      • トレンド

      ブログをはじめる

      たくさんの芸能人・有名人が
      書いているAmebaブログを
      無料で簡単にはじめることができます。

      公式トップブロガーへ応募

      多くの方にご紹介したいブログを
      執筆する方を「公式トップブロガー」
      として認定しております。

      芸能人・有名人ブログを開設

      Amebaブログでは、芸能人・有名人ブログを
      ご希望される著名人の方/事務所様を
      随時募集しております。