• 締切済み

WindowsのEmacsでTwitterを見たい

Windowsは10か11で、Emacsはバージョンが27.3です。 Twittering-modeを使いたいのですが、うまく動作しません。 EmacsWikiのTwittering-modeのページ(https://www.emacswiki.org/emacs/TwitteringMode-ja)を参考にして、Githubからtwittering-mode-masterをダウンロードし環境変数でHOMEに指定したディレクトリにコピー。 init.elに(add-to-list 'load-path "~/twittering-mode-master")と(require 'twittering-mode)を記述して、M-x twitとすると「Failure: c:/Windows/system32/curl.exe exited abnormally (exit-status=2) for POST https://api.twitter.com/oauth/request_token cond: Failed to retrieve a request token」というメッセージが帰ってきます。 ちなみに、Linux(Debian 11.2)だと同様に設定すると問題なく動きます。 どなたかアドバイスお願いできますか。よろしくお願いいたします。

みんなの回答

回答No.1

専門家ではありません。 >Linux(Debian 11.2)だと同様に設定すると問題なく動きます。 ということであれば、多分Windows、Emacs、twitterring-modeに関しても大丈夫だと想像するので、 当該マシーンを初期化して、 ルートでカニバりそうなプログラムをシャットダウンした上で、 インストール手順をやり直すと動くのではないかと思いますがいかがでしょうか? ”Emacs 27.2をWindows 10のPCにインストールし、ついでにScalaの開発環境を再整備したり等してみた。” https://pandanote.info/?p=8049 ”Emacs(イーマックス、[ˈiːmæks])は、その拡張性を特徴としたテキストエディタのファミリーである[3]。Emacsの中で最も広く使われている派生物はGNU Emacsである” https://ja.wikipedia.org/wiki/Emacs ”twittering-modeは、EmacsでTwitterをするためのメジャーモードです。タイムラインのチェック、投稿、お気に入りなど様々なTwitterの機能をEmacsから使うことができます。” http://twmode.sourceforge.net/ja/ ”偉大な先人がすでに設定やインストール手順を分かりやすく記事にしておられるのでそちらを参考にしてもよいだろう.
ちなみにソースコードはGithubから取得するのが吉.” https://tam5917.hatenablog.com/entry/20120916/1347772103 ↓少し古いですが、参考になるかもです。 ”Windows版emacsでmagitとtwitterを使う” https://jamcha-aa.github.io/2016/09/13/ntemacs.html ”TwitteringMode.el その2  curl.exeが原因でTwitteringMode.elを使えないとき” https://shuzo-kino.hateblo.jp/entry/20120228/1330432715 こちらも参考に! 「Emacs」「Windows」に関する質問と回答 https://okwave.jp/search?word=Emacs%20Windows 良い方向に進みますように! 参考になれば幸いです。

kaisaka
質問者

お礼

ご回答ありがとうございました。

関連するQ&A

  • Twitter codebirdでエラーがでます

    http://dotinstall.com/lessons/tw_connect_php_v2 上記のサイトを参考にツイッターでログインするサービスを作りたいのですが、 下記のようなエラーがでてしまいます。 Fatal error: Uncaught exception 'Exception' with message 'Error 77 while validating tificate.' in C:\xampp\htdocs\tw\codebird.php:923 Stack trace: #0 C:\xampp\htdocs\tw\codebird.php(294): Codebird\Codebird->_callApi('POST', 'oauth/request_t...', 'oauth/request_t...', Array, false, false) #1 C:\xampp\htdocs\tw\callback.php(15): Codebird\Codebird->__call('oauth_requestTo...', Array) #2 C:\xampp\htdocs\tw\callback.php(15): Codebird\Codebird->oauth_requestToken(Array) #3 {main} thrown in C:\xampp\htdocs\tw\codebird.php on line 923 認証にはcodebird.phpというライブラリを使っています。 https://github.com/mynetx/codebird-php <a href="callback.php">twitterでログイン</a> これをクリックすると、callback.phpに飛び認証が行われるという具合です。 callback.php内ではconfig.phpとcodebird.phpを読み込んでます。 以下callback.phpコード <?php require_once('config.php'); require_once('codebird.php'); session_start(); \Codebird\Codebird::setConsumerKey('CONSUMER_KEY', 'CONSUMER_SECRET'); $cb = \Codebird\Codebird::getInstance(); if (!isset($_SESSION['oauth_token'])) { // get the request token $reply = $cb->oauth_requestToken(array( 'oauth_callback' => 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] )); // store the token $cb->setToken($reply->oauth_token, $reply->oauth_token_secret); $_SESSION['oauth_token'] = $reply->oauth_token; $_SESSION['oauth_token_secret'] = $reply->oauth_token_secret; $_SESSION['oauth_verify'] = true; // redirect to auth website $auth_url = $cb->oauth_authorize(); header('Location: ' . $auth_url); die(); } elseif (isset($_GET['oauth_verifier']) && isset($_SESSION['oauth_verify'])) { // verify the token $cb->setToken($_SESSION['oauth_token'], $_SESSION['oauth_token_secret']); unset($_SESSION['oauth_verify']); // get the access token $reply = $cb->oauth_accessToken(array( 'oauth_verifier' => $_GET['oauth_verifier'] )); // store the token (which is different from the request token!) //$_SESSION['oauth_token'] = $reply->oauth_token; //$_SESSION['oauth_token_secret'] = $reply->oauth_token_secret; $cb->setToken($reply->oauth_token, $reply->oauth_token_secret); $me = $cb->account_verifyCredentials(); var_dump($me); exit; // send to same URL, without oauth GET parameters header('Location: ' . basename(__FILE__)); die(); } // assign access token on each page load $cb->setToken($_SESSION['oauth_token'], $_SESSION['oauth_token_secret']);

    • 締切済み
    • PHP
  • TwitterのAPI制限について

    OAuthを使ってログインしたいと思い色々調べているのですが APIの実行回数の制限についてよく分かりません。 例えば下記のコードでログイン用のURLを取得しています。 TwitterのAPIの制限が1時間に150回となっているのですが 下記のログインURL呼び出しのリクエストはAPI実行回数制限にカウントされるのか? カウントされるのであれば サーバーIP等での実行回数制限になるのか クライアントIP等での実行回数制限になるのか どちらなのでしょうか? サーバーIPでの制限であればまともにサービス展開できませんし 調べてみたのですが確認できませんでした。 ご存知の方がいらっしゃいましたらご教授下さい。 よろしくお願いします。 <? session_start(); require_once("oauth/twitteroauth/twitteroauth.php"); if($_SESSION['oauth_token']===NULL && $_SESSION['oauth_token_secret']===NULL){ $consumer_key = "xxxxxxxxxxxxxxxxxxxxxx"; $consumer_secret = "xxxxxxxxxxxxxxxxxxxxxx"; // OAuthオブジェクト生成 $to = new TwitterOAuth($consumer_key,$consumer_secret); // callbackURLを指定してRequest tokenを取得 $tok = $to->getRequestToken("http://xxxxxxxxx/callback.php"); // セッションに保存 $_SESSION['request_token']=$token=$tok['oauth_token']; $_SESSION['request_token_secret'] = $tok['oauth_token_secret']; // サインインするためのURLを取得 $url = $to->getAuthorizeURL($token); print "<a href=\"$url\">サインイン</a>"; } else{ //サインインしていればヘッダーを出力 include("user_header.php"); } ?>

    • ベストアンサー
    • PHP
  • Twitter Oauth認証がエラーになります。

    現在Twitterログインアプリを作りいのですが、 下記のようなエラーが出てしまいます。 Fatal error: Class 'Codebird' not found in /var/www/html/callback.php on line 8 認証にはcodebird.phpというライブラリを使っております。 (https://github.com/mynetx/codebird-php 下記コードのソースもこちらです。) 分かる方がいらっしゃれば教えて原因を教えて頂けると非常に助かります。 宜しくお願い致します。。 以下仕様 <a href="callback.php">twitterでログイン</a> これをクリックすると、callback.phpに飛び認証が行われるという具合です。 callback.php内ではconfig.phpとcodebird.phpを読み込んでます。 以下callback.phpコード var_dump($me); が実行出来ず、先に記したエラーが起きます。 <?php require_once('config.php'); require_once('codebird.php'); session_start(); Codebird::setConsumerKey(CONSUMER_KEY, CONSUMER_SECRET); //上記の定数はconfig.phpに記載しており、スペルミスはありません。 $cb = Codebird::getInstance(); if (! isset($_GET['oauth_verifier'])) { // gets a request token $reply = $cb->oauth_requestToken(array( 'oauth_callback' => 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] )); // stores it $cb->setToken($reply->oauth_token, $reply->oauth_token_secret); $_SESSION['oauth_token'] = $reply->oauth_token; $_SESSION['oauth_token_secret'] = $reply->oauth_token_secret; // gets the authorize screen URL $auth_url = $cb->oauth_authorize(); header('Location: ' . $auth_url); die(); } else { // gets the access token $cb->setToken($_SESSION['oauth_token'], $_SESSION['oauth_token_secret']); $reply = $cb->oauth_accessToken(array( 'oauth_verifier' => $_GET['oauth_verifier'] )); // $_SESSION['oauth_token'] = $reply->oauth_token; // $_SESSION['oauth_token_secret'] = $reply->oauth_token_secret; $cb->setToken($reply->oauth_token, $reply->oauth_token_secret); $me = $cb->account_verifyCredentials(); var_dump($me); exit; }

    • 締切済み
    • PHP
  • TwitterのOauth認証プログラムについて

    TwitterのOauth認証プログラムについて 現在、Oauth認証を使って、一般ユーザが認証確認後、 WEBから投稿できるシステムを作ろうとしています。 Oauth_TokenとOauth_Token_Secretは、 $tok = $to->getRequestToken(); で取得されたものを変数として保持して取得しようとしているのですが、 この2つの認証コードと、固有の consumer_keyとconsumer_secretを使用して 認証させ、投稿プログラム $req = $to->OAuthRequest("https://twitter.com/statuses/update.xml","POST",array("status"=> $tweet . " " . $url . " #" . $hash)); を実行させると、なぜか <?xml version="1.0" encoding="UTF-8" ?> - <hash> <request>/statuses/update.xml</request> <error>Could not authenticate you.</error> </hash> つまり、認証されてない状態になってしまいます。 Oauth_TokenとOauth_Token_Secretを取得している場所が間違っているのでしょうか? もしかしてこの2つのコードが逆だったのかもしれないと思い、 逆にして投稿してみたのですが、それでも同じエラー画面に飛んでしまいます。 なぜだか分かる方、いらっしゃいますか?

    • ベストアンサー
    • PHP
  • Twitterでリクエストトークン取得時にエラー

    初歩的な質問で申し訳ありません。 色々と修正してみたのですが、どうしても分からなかったので質問させてください。 TwitterのAPIを利用してbotシステムを作っているのですが、 最初の認証画面のところで、リクエストトークンが取得できなくなってしまいました。 昨日までは正常に動いていたのを確認できていたんですが・・・ ********** 【ソース】 require_once '../twitteroauth-master/twitteroauth/twitteroauth.php'; $api_key = 'xxxxxx'; $api_secret = 'xxxxxxxxxx'; // TwitterOAuth認証を作成 $twitter = new TwitterOAuth($api_key, $api_secret); // トークン情報から認証URLを取得 $request_token = $twitter->getRequestToken('http://hoge.jp/callback.php'); $url = $twitter->getAuthorizeURL($request_token, true); // セッションにデータを保存 $_SESSION["token"] = $request_token["oauth_token"]; $_SESSION["token_secret"] = $request_token["oauth_token_secret"]; // 認証ページ表示 header("Location: $url"); ********** ちなみに、TwitterのAPI取得画面で、Callback URLは設定しています。 また、twitteroauth.phpのhttpファンクションの中でcurl_error($ci)を表示させると、 「Problem with the SSL CA cert (path? access rights?)」 というエラーメッセージが表示されました。 なぜいきなりエラーが起こるようになってしまったのか、何か不備があるのであれば教えていただけないでしょうか。 お知恵を貸していただければと思います。 よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • ツイッターのAPIでOAUTH認証を使用してのAPIリクエストについて

    ツイッターのAPIでOAUTH認証を使用してのAPIリクエストについて ツイッターのAPIを利用してアプリケーションを開発しています。 OAUTH認証でアクセストークンの取得まではできたのですが、 アクセストークンを使ってAPIにアクセスしたところページが 存在しないとの旨を伝えられました。 ↓実際のソース https://twitter.com/1/statuses/update.xml?in_reply_to_status_id=自分のID(アクセストークンで取得したもの)&oauth_consumer_key=OAUTHコンシューマキー&oauth_nonce=ランダム文字列&oauth_signature_method=HMAC-SHA1&oauth_timestamp=タイムスタンプ&oauth_token=アクセストークン&oauth_version=1.0&status=つぶやきたい内容&oauth_signature=署名 上記URLにheader()(リダイレクト)でアクセスしています。simplexml_load_file()や file_get_contents();だと何も取得できませんでした。 特に不安なのがin_reply_to_status_idの指定先と実際のリクエストの仕方が良く わからない事です。何とかして呟きたいのでご教示よろしくお願いいたします。

  • Emacs上で動かせるWebkitの設定について

    Emacsに関して初心者レベルなのですがお願いします。 http://www.emacswiki.org/emacs/WebKit 上記のページにEmacs上でWebkitを動かせる方法が記してあるので挑戦してみました。 まずDebian GNU/Linux 8.1をクリーンインストールした環境を準備。(apt-get upgradeも適用しました) はじめに「How to install it?」項目の一行目、”Emacs-webkit is based on PyQt5/PythonXlib/PythonEPC , so you need to install all these libraries to run emacs-webkit.”ということで、PyQt5、PythonXlib、PythonEPCを下記の手順でインストールしました。 PyQt5のインストール: $ sudo apt-get install qt5-default qttools5-dev-tools PythonXlibのインストール: $ sudo apt-get install python-xlib PythonEPCのインストール $ sudo apt-get install python-pip $ sudo pip install epc 次に「How to install it?」項目の二行目ですが、”Then download the emacs-webkit source code from github and put webkit.el in your load-path.”ということで、リンク先のgithubサイトから7つのファイルをダウンロードして、~/webkit/というディレクトリに保存したところまではできたのですが、”and put webkit.el in your load-path.”から先がよく分かりません。 ”load-pathが指定されてるところにwebkit.elを配置しろ”という意味だと思いましたので、~/.emacs.d/init.elに(add-to-list 'load-path "~/webkit/")と記し、「How to install it?」項目の三行目”After loading it, enjoy your browsing with M-x webkit-open-url.”に従ってEmacsを再起動後、M-x webkit-open-urlとしましたが[No match]となります。 ネットで検索したところ下記のようなページがありましたので、 (http://stackoverflow.com/questions/30460229/webkit-on-emacs-does-not-found-python-epc) 参考にして~/.emacs.d/init.elには次のように記しました。 (add-to-list 'load-path "~/webkit/") (require 'epc) (load "webkit.el") ただ、このページはエラーの相談ですので当然ですが、”File error: Cannot open load file, epc”となり先に進めません。 状況としては以上です。 どなたか良いアドバイスをお願いいたします。よろしくどうぞ。

  • Emacsでのgccのインクルードパスの設定方法

    こんにちは。 Emacsは、Gnu Emacs for Windows 23.4 を使っています。 gccのインクルードパスの問題により、Emcasのcompileコマンドで、Cのソースファイルをコンパイルするができなくて困っています。 具体的には、CのソースファイルをEmacsで開き、「M-x compile」と入力した後、ミニバッファで「gcc -c test.c」と入力すると、以下のようなコンパイルエラーが表示されます。 ------------------------------------------------------------ gcc -c test.c test.c:1:19: no include path in which to search for stdio.h Compilation exited abnormally with code 1 at Sun Jul 08 18:24:05 ------------------------------------------------------------ どうやら、インクルードパスが設定されていないようです。 ちなみに、test.cは以下のような非常に単純なCプログラムです。 ------------------------------------------------------------ include <stdio.h> int main(void) { printf("Hello!\n"); return 0; } ------------------------------------------------------------ コマンドプロンプトや、ktermといった端末から、同じように gcc -c test.c というコマンドを実行すると、エラーが出る事はなく上手くコンパイルできますので、 適切なインクルードパスが設定されているはずです。 どうすれば、Emacsのcompileコマンドから、gccでコンパイルを行う時に使われる、インクルードパスを設定する事ができるのでしょうか? (gccの-Iオプションで、毎回インクルードパスを設定する必要をなくす方法が知りたいです。) では、よろしくお願い致します。

  • PHPからJavaScriptの自動遷移プログラムを起動させたいのです

    PHPからJavaScriptの自動遷移プログラムを起動させたいのですが、 現在、次の形のPHPプログラムで自動遷移のJavaScriptを呼び出しています。 /* authorization URL を生成*/ $request_link = $to->getAuthorizeURL($token); $val ="location.href = \"" . $request_link . "\""; echo $val; $val ="</head></html>"; echo $val; そうすると、実行画面で、なぜか <script type="text/javascript"> <!-- location.href = "https://twitter.com/oauth/authenticate?oauth_token=*****"</head></html> と出力されて、JavaScriptが起動していません。 どのように組み替えればいいでしょうか? 単純なことで申し訳ありませんが、ご教授願います。

    • ベストアンサー
    • PHP
  • codebird:リクエストトークンが取得できない

    codebirdでWordpressに『Twitterでログイン』機能を作ろうとしているのですが しょっぱなのrequest_token取得からつまづいてます コードはcodebirdのgitのサンプルコードそのままです $reply = $cb->oauth_requestToken(array('oauth_callback' => 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']));//ここで取得失敗 $var_dump($reply);//出力 ↓ object(stdClass)#2 (2) { ["message"]=> string(44) "Failed to validate oauth signature and token" ["httpstatus"]=> int(401) } みたいなカンジです 同アプリケーションにて自分のTwitterアカウントにaccess_tokenを発行して codebirdでタイムラインを取得できることは確認しています codebird自体は稼働しているしconsumer_keyは間違っていないはずです dev.twitterのアプリケーションのsettingでは Sign in with Twitterはyesになっています またTwitterAPIの仕様が変わったんでしょうか? よろしくお願いします

    • ベストアンサー
    • PHP

専門家に質問してみよう