From: kiri_feather Date: Thu, 7 Apr 2011 09:51:15 +0000 (+0900) Subject: 強制短縮URL解決を試みると、twitter.com/#!/xxx/xxx のパスまで含めたuri文字列が取得できないので、twitter.comは強制除外。他のパターンは不明。 X-Git-Tag: Tween_v1.0.1.0~8 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=1fa58f57e417d391baf4e39b8d0ece754d690b32;p=opentween%2Fopen-tween.git 強制短縮URL解決を試みると、twitter.com/#!/xxx/xxx のパスまで含めたuri文字列が取得できないので、twitter.comは強制除外。他のパターンは不明。 強制短縮URL解決の設定初期値をオフに。 ListManageの一部英語リソース漏れ対応。 CreateHtmlAnchorの正規表現見直し --- diff --git a/Tween/ListManage.vb b/Tween/ListManage.vb index 484d9434..54acf709 100644 --- a/Tween/ListManage.vb +++ b/Tween/ListManage.vb @@ -71,7 +71,7 @@ Public Class ListManage Me.UserList.Items.Add(user) Next - Me.GetMoreUsersButton.Text = IIf(Me.UserList.Items.Count > 0, "さらに取得(&M)", "取得(&M)").ToString() + Me.GetMoreUsersButton.Text = IIf(Me.UserList.Items.Count > 0, My.Resources.ListManageGetMoreUsers2, My.Resources.ListManageGetMoreUsers1).ToString() End Sub Private Sub EditCheckBox_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EditCheckBox.CheckedChanged @@ -159,7 +159,7 @@ Public Class ListManage Private Sub GetListMembersCallback(ByVal result As String) If result = Me.ListsList.SelectedItem.ToString Then Me.ListsList_SelectedIndexChanged(Me.ListsList, EventArgs.Empty) - Me.GetMoreUsersButton.Text = "さらに取得(&M)" + Me.GetMoreUsersButton.Text = My.Resources.ListManageGetMoreUsers1 Else MessageBox.Show(String.Format(My.Resources.ListManageGetListMembersCallback1, result)) End If diff --git a/Tween/My Project/Resources.Designer.vb b/Tween/My Project/Resources.Designer.vb index 68f3ece0..68a8afa7 100644 --- a/Tween/My Project/Resources.Designer.vb +++ b/Tween/My Project/Resources.Designer.vb @@ -550,22 +550,21 @@ Namespace My.Resources ''' ''' 更新履歴 ''' - '''==== Ver 1.0.0.0(2011/02/26) - ''' * ListView追加時の画面ちらつき対処 - ''' * OS復帰時30秒経過後にREST取得を走らせるように - ''' * OutOfMemoryが発生する問題に対処 - ''' * 再起動時に例外が発生する問題に対処(したつもり) - ''' * メモリを食いつぶす問題に対処 - ''' * しばらく応答しなくなる問題に対処 - ''' * bit.ly/j.mpでのURL短縮が出来なくなった問題に対処 - ''' * タブ削除のUndo(編集メニュー)が直前のものしか出来なかったが、複数Undo出来るように変更 - ''' * 1時間ごとにフォロワー情報再取得 - ''' * 発言ソートで、ソートキーが日時以外の場合にstable sortに - ''' * 新着通知オフ時の強制イベント通知の初期設定値をFalseへ - ''' * 設定画面の動作→イベント受信時、を表示下へ移動 - ''' * 設定画面のUserStreamパネルの内容を基本→更新間隔へ移動、パネル削除 - ''' * 投稿時取得をUserStream有効時でも効くように戻し - ''' * gキーの関連発言表示でツイートのURLが含まれている場合に関連発言タブ [残りの文字列は切り詰められました]"; に類似しているローカライズされた文字列を検索します。 + '''==== Ver 1.0.0.2(2011/03/29) + ''' * 発言削除時に未読数がずれるバグ修正 + ''' * Favorite追加・削除時の発言色が反映されないバグ修正 + ''' * 不正画像対策強化 + ''' * 発言リストの選択状態がずれる問題に対処 + ''' * ユーザー発言タブで振分条件が追加できるバグ修正 + ''' * タブ選択画面にユーザー発言タブが表示されるバグ修正 + ''' * TwitterのユーザープロフィールURLをCtrl+クリック時は、設定の「Tweenタブ表示orWeb表示の設定」と逆の動作をするよう変更 + ''' * ユーザーのアイコン画像が表示されないバグ修正 + ''' * 画像サムネイル表示サービスにpikubo、ニコニコ静画を追加 + ''' * User Streams有効時のイベント一覧をCSVファイル保存できるように + ''' * Ctrl-j/kでのカーソル移動が出来ないバグ修正 + ''' * 全取得停止機能追加(ファイル→「All Refresh Stop」) + ''' * 発言リストで発言をダブルクリックした際の動作を設定で変更可能に + ''' * ユーザー定義のURLを開く機能を追加。設定画面のURL指定に{ID}を [残りの文字列は切り詰められました]"; に類似しているローカライズされた文字列を検索します。 ''' Friend ReadOnly Property ChangeLog() As String Get @@ -1410,6 +1409,24 @@ Namespace My.Resources End Property ''' + ''' 取得(&M) に類似しているローカライズされた文字列を検索します。 + ''' + Friend ReadOnly Property ListManageGetMoreUsers1() As String + Get + Return ResourceManager.GetString("ListManageGetMoreUsers1", resourceCulture) + End Get + End Property + + ''' + ''' さらに取得(&M) に類似しているローカライズされた文字列を検索します。 + ''' + Friend ReadOnly Property ListManageGetMoreUsers2() As String + Get + Return ResourceManager.GetString("ListManageGetMoreUsers2", resourceCulture) + End Get + End Property + + ''' ''' リスト名を入力してください に類似しているローカライズされた文字列を検索します。 ''' Friend ReadOnly Property ListManageOKButton1() As String diff --git a/Tween/My Project/Resources.en.resx b/Tween/My Project/Resources.en.resx index 8979da25..39eaa082 100644 --- a/Tween/My Project/Resources.en.resx +++ b/Tween/My Project/Resources.en.resx @@ -972,4 +972,10 @@ Consumption API count if using Users Streams : {0} / h + + Get members(&M) + + + Get more(&M) + \ No newline at end of file diff --git a/Tween/My Project/Resources.resx b/Tween/My Project/Resources.resx index 8c3d92ac..c9ebb886 100644 --- a/Tween/My Project/Resources.resx +++ b/Tween/My Project/Resources.resx @@ -1090,4 +1090,10 @@ BlockIds取得完了 + + 取得(&M) + + + さらに取得(&M) + \ No newline at end of file diff --git a/Tween/My Project/Resources.zh-CHS.resx b/Tween/My Project/Resources.zh-CHS.resx index 934acdc9..a0f9e2aa 100644 --- a/Tween/My Project/Resources.zh-CHS.resx +++ b/Tween/My Project/Resources.zh-CHS.resx @@ -993,4 +993,10 @@ UserTimeline + + Get members(&M) + + + Get more(&M) + \ No newline at end of file diff --git a/Tween/Setting/SettingCommon.vb b/Tween/Setting/SettingCommon.vb index 9621bfe5..ab6fd313 100644 --- a/Tween/Setting/SettingCommon.vb +++ b/Tween/Setting/SettingCommon.vb @@ -118,7 +118,7 @@ Public Class SettingCommon Public DispLatestPost As DispTitleEnum = DispTitleEnum.Post Public SortOrderLock As Boolean = False Public TinyUrlResolve As Boolean = True - Public ShortUrlForceResolve As Boolean = True + Public ShortUrlForceResolve As Boolean = False Public PeriodAdjust As Boolean = True Public StartupVersion As Boolean = True Public StartupFollowers As Boolean = True diff --git a/Tween/ShortUrl.vb b/Tween/ShortUrl.vb index 0214acec..1c1e84c4 100644 --- a/Tween/ShortUrl.vb +++ b/Tween/ShortUrl.vb @@ -120,13 +120,13 @@ Public Class ShortUrl End If End SyncLock - Dim m As MatchCollection = Regex.Matches(orgData, "http://.+?/)(?[^""]+)""", RegexOptions.IgnoreCase) + Dim m As MatchCollection = Regex.Matches(orgData, "http://.+?/)(?[^""]+)?""", RegexOptions.IgnoreCase) Dim urlList As New List(Of String) For Each orgUrlMatch As Match In m Dim orgUrl As String = orgUrlMatch.Result("${svc}") Dim orgUrlPath As String = orgUrlMatch.Result("${path}") If (_isForceResolve OrElse Array.IndexOf(_ShortUrlService, orgUrl) > -1) AndAlso _ - Not urlList.Contains(orgUrl + orgUrlPath) Then + Not urlList.Contains(orgUrl + orgUrlPath) AndAlso orgUrl <> "http://twitter.com/" Then SyncLock _lockObj urlList.Add(orgUrl + orgUrlPath) End SyncLock diff --git a/Tween/Twitter.vb b/Tween/Twitter.vb index 11e96adb..a3b99238 100644 --- a/Tween/Twitter.vb +++ b/Tween/Twitter.vb @@ -2706,17 +2706,19 @@ Public Class Twitter If Text Is Nothing Then Return Nothing Dim retStr As String = Text.Replace(">", "<<<<>>>>").Replace("<", "<<<<>>>>") 'uriの正規表現 + Const url_valid_domain As String = "(?(?:[\.-]|[^\p{P}\s])+\.[a-z]{2,}(?::[0-9]+)?)" Const url_valid_general_path_chars As String = "[a-z0-9!*';:=+$/%#\[\]\-_,~]" - Const url_valid_url_path_ending_chars As String = "[a-z0-9=#/]" - Const pth As String = "(?/(?:(?:\(" + url_valid_general_path_chars + "+\))" + + Const url_balance_parens As String = "(?:\(" + url_valid_general_path_chars + "+\))" + Const url_valid_url_path_ending_chars As String = "(?:[a-z0-9=_#/\-\+]+|" + url_balance_parens + ")" + Const pth As String = "(?(/(?:" + url_balance_parens + "|@" + url_valid_general_path_chars + "+/" + - "|[.,]?" + url_valid_general_path_chars + - ")*" + - url_valid_url_path_ending_chars + "?)?" + "|[.,]?" + url_valid_general_path_chars + "+" + + ")?" + + url_valid_url_path_ending_chars + "?)?)" Const qry As String = "(?\?[a-z0-9!*'();:&=+$/%#\[\]\-_.,~]*[a-z0-9_&=#])?" Const rgUrl As String = "(?(?:[^\""':!=]|^|\:))" + "(?(?https?://|www\.)" + - "(?(?:[\.-]|[^\p{P}\s])+\.[a-z]{2,}(?::[0-9]+)?)" + + url_valid_domain + pth + qry + ")"