Windows의 e-메일 경로 - 콜론이 없습니까?

12205 단어 letter_opener

묘사

여보세요,
브라우저로 전달되는 전자 메일 파일의 경로가 올바르지 않은 것처럼 Windows에서 개발 중입니다.
내가 얻은 경로는:
file://c/Users/marek/holidio/tmp/letter_opener/1319989022_e6a716e/rich.html
그런 것 같아요.
파일:://c:/Users/marek/holidio/tmp/letter opener/1319989022 e6a716e/rich.html
운영 체제를 인식하고 Windows 수정 프로그램을 적용할 수 있는 방법이 있는지 확인하지 못했습니다...?
만약 그렇지 않다면 - 전자 우편을 열려고 하지 않는 것으로 설정할 수 있는 방법이 있습니까?
감사합니다,
Marek

토론 #1

Launchy가 결장을 삼키고 있으니 거기서 복구하는 게 좋을 거야.letter opener에서 올바른 경로를 전달하므로 리소스 매니저의 시스템 호출을 통해 Launchy를 우회하여 파일을 열 수 있습니다.
코드에서 ENV ['LAUNCHY DEBUG'] =true를 다시 실행하고 출력을 여기에 붙여넣을 수 있습니까?
https://github.com/copiousfreetime/launchy/issues/41
내가 고쳐줄게.

토론 #2

사실 이것은 개봉 문제이다.URI는 비표준적인...파일: 뒤에는 두 개가 아닌 세 개의 슬래시가 있어야 합니다.오직https://github.com/ryanb/letter_opener/blob/master/lib/letter_opener/delivery_method.rb#L12이 문제를 해결했다.

토론 #셋

이 문제는 여전히 존재한다.
어떻게 필요한 사칭을 해결하고 추가합니까?

토론 #4

@kisin@bensmith283 이 패치를 사용해 보세요. 문제를 해결할 수 있는지 확인해 주시겠어요?

토론 #5

일하지 않습니다.
경로가 존재하지 않음 오류가 계속 발생합니다.
이 길의 시작은 "file://C/projects/..."
드라이브 문자 뒤에 콜론이 없습니다.
겸사겸사 한마디 하자면, 윈도우즈 xp

토론 #6

에서 RailsInstaller@kisin을 사용하면irb 컨트롤러를 열고 다음 동작을 시도할 수 있습니까?
system("explorer file://#{messages.first.filepath}")
만약 네가 이렇게 한 후에 전체 출력을 여기에 발표한다면, 나는 launchy가 이런 상황에서 무엇을 했는지 확인할 수 있다. 우리는 이것이 launchy인지letter opener의 오류인지 찾아낼 수 있다.

토론 #7

@copiousfreetime는 시작 문제가 아닌 것 같습니다 @mnarayan01이 맞습니다.세 번째 슬래시를 URI에 추가하여 이 문제를 해결했습니다.나는 너의 스티커를 시험해 본 적이 있다https://github.com/copiousfreetime/letter_opener/commit/64e7e079f78b92c651c11421ac5caf97a4a32010
마찬가지로 그렇지만 그것은 결코 이 문제를 해결하지 못했다.
디버그 출력입니다.
>> require 'rubygems'
>> require 'launchy'
>> ENV['LAUNCHY_DEBUG'] = 'true'
>> Launchy.open( "file:///C/projects/..." )
# some output
>> Launchy.open("file://C:/projects/...")
# some output
>> Launchy.open("file:///C:/projects/...")
# some output

토론 #8

@bensmith283 감사합니다.

토론 #9

맥을 슬프게 했다.파일 경로: "/krainboltgreene/Code/Ruby/..."존재하지 않음

토론 #10

여러분, 마스터 브랜치에서 테스트 좀 해 주시겠어요?고쳐야 돼!

토론 #11

헤이, 실례지만, 잃어버린 사칭에도 같은 문제가 있습니다.
콜론이 있으면, Launchy는 불평 없이 일을 할 수 있다.
그것이 더 나빠질 수 있습니까?

토론 #12

@guyisra 네...만약에https://github.com/ryanb/letter_opener/pull/71.Windows와 관련된 문제를 완전히 잊어버렸습니다.나는 어떻게 이 두 가지를 모두 작용하게 하는지 모르겠다.무슨 생각 있어요?

토론 #13

그것을 가지는 것은 문제가 되지 않는다. 크롬이 자동으로 3개의 철봉으로 정정할 것 같기 때문이다.문제는 file://에 사칭이 부족하다는 점이다.

토론 #14

헤이@copiousfreetime, 무슨 생각 있어요?file:// 루비에 launchy로 보내는 내용을 표시하기 위해 필요한 일을 하십시오. 그러면 테스트 용례를 복사해서 거기서부터 시작할 수 있습니다.c:@copiousfreetime 여기 있습니다.https://gist.github.com/nashby/182e40f5de539f774314

토론 #15

Hrmm..내 생각에는 안에 세 개가 있을 것 같다.

토론 #16

ENV['LAUNCHY_DEUBG'] == "true"@copiousfreetime는osx와linux 등 다른 플랫폼과 호환됩니까?

토론 #17

내 생각에는 그렇다.그렇게 생각해요

토론 #18

.file:///E/...는 URL의 일부이며, 세 번째

토론 #19

는 파일 경로의 시작입니다.호스트 이름은 비어 있는

토론 #20

로 간주할 수 있습니다.다음은 제 OS X 노트북에서 벌어진 일입니다.

파일://2 슬래시

irb(main):001:0> require 'rubygems'
=> true
irb(main):002:0> require 'launchy'
=> true
irb(main):003:0> ENV['LAUNCHY_DEBUG']='true'
=> "true"
irb(main):004:0> Launchy.open( "file:///C/projects/rich.html" )
LAUNCHY_DEBUG: Checking if class Launchy::Application::Browser is the one for ha
ndles?(file:///C/projects/rich.html)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::HostOsFamily::Darwin is the on
e for matches?(mingw32)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::HostOsFamily::Nix is the one f
or matches?(mingw32)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::HostOsFamily::Cygwin is the on
e for matches?(mingw32)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::HostOsFamily::Windows is the o
ne for matches?(mingw32)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::RubyEngine::Jruby is the one f
or is_current_engine?(ruby)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::RubyEngine::Rbx is the one for
 is_current_engine?(ruby)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::RubyEngine::Mri is the one for
 is_current_engine?(ruby)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::HostOsFamily::Darwin is the on
e for matches?(mingw32)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::HostOsFamily::Nix is the one f
or matches?(mingw32)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::HostOsFamily::Cygwin is the on
e for matches?(mingw32)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::HostOsFamily::Windows is the o
ne for matches?(mingw32)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::RubyEngine::Jruby is the one f
or is_current_engine?(ruby)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::RubyEngine::Rbx is the one for
 is_current_engine?(ruby)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::RubyEngine::Mri is the one for
 is_current_engine?(ruby)}
LAUNCHY_DEBUG: Launchy::Application::Browser : possibility : start /b
LAUNCHY_DEBUG: Launchy::Application::Browser : Using browser value 'start /b'
LAUNCHY_DEBUG: commandline_normalized => start /b file:///C/projects/rich.html
LAUNCHY_DEBUG: Windows: all_args => ["cmd", "/c", "start", "/b", "file:///C/proj
ects/rich.html"]
The system cannot find the file file:///C/projects/rich.html.
=> false
irb(main):005:0> Launchy.open( "file://C:/projects/rich.html" )
LAUNCHY_DEBUG: Checking if class Launchy::Application::Browser is the one for ha
ndles?(file://C/projects/rich.html)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::HostOsFamily::Darwin is the on
e for matches?(mingw32)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::HostOsFamily::Nix is the one f
or matches?(mingw32)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::HostOsFamily::Cygwin is the on
e for matches?(mingw32)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::HostOsFamily::Windows is the o
ne for matches?(mingw32)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::RubyEngine::Jruby is the one f
or is_current_engine?(ruby)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::RubyEngine::Rbx is the one for
 is_current_engine?(ruby)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::RubyEngine::Mri is the one for
 is_current_engine?(ruby)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::HostOsFamily::Darwin is the on
e for matches?(mingw32)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::HostOsFamily::Nix is the one f
or matches?(mingw32)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::HostOsFamily::Cygwin is the on
e for matches?(mingw32)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::HostOsFamily::Windows is the o
ne for matches?(mingw32)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::RubyEngine::Jruby is the one f
or is_current_engine?(ruby)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::RubyEngine::Rbx is the one for
 is_current_engine?(ruby)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::RubyEngine::Mri is the one for
 is_current_engine?(ruby)}
LAUNCHY_DEBUG: Launchy::Application::Browser : possibility : start /b
LAUNCHY_DEBUG: Launchy::Application::Browser : Using browser value 'start /b'
LAUNCHY_DEBUG: commandline_normalized => start /b file://C/projects/rich.html
LAUNCHY_DEBUG: Windows: all_args => ["cmd", "/c", "start", "/b", "file://C/proje
cts/rich.html"]
The system cannot find the file file://C/projects/rich.html.
=> false
irb(main):006:0> Launchy.open( "file:///C:/projects/rich.html" )
LAUNCHY_DEBUG: Checking if class Launchy::Application::Browser is the one for ha
ndles?(file:///C:/projects/rich.html)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::HostOsFamily::Darwin is the on
e for matches?(mingw32)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::HostOsFamily::Nix is the one f
or matches?(mingw32)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::HostOsFamily::Cygwin is the on
e for matches?(mingw32)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::HostOsFamily::Windows is the o
ne for matches?(mingw32)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::RubyEngine::Jruby is the one f
or is_current_engine?(ruby)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::RubyEngine::Rbx is the one for
 is_current_engine?(ruby)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::RubyEngine::Mri is the one for
 is_current_engine?(ruby)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::HostOsFamily::Darwin is the on
e for matches?(mingw32)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::HostOsFamily::Nix is the one f
or matches?(mingw32)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::HostOsFamily::Cygwin is the on
e for matches?(mingw32)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::HostOsFamily::Windows is the o
ne for matches?(mingw32)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::RubyEngine::Jruby is the one f
or is_current_engine?(ruby)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::RubyEngine::Rbx is the one for
 is_current_engine?(ruby)}
LAUNCHY_DEBUG: Checking if class Launchy::Detect::RubyEngine::Mri is the one for
 is_current_engine?(ruby)}
LAUNCHY_DEBUG: Launchy::Application::Browser : possibility : start /b
LAUNCHY_DEBUG: Launchy::Application::Browser : Using browser value 'start /b'
LAUNCHY_DEBUG: commandline_normalized => start /b file:///C:/projects/rich.html
LAUNCHY_DEBUG: Windows: all_args => ["cmd", "/c", "start", "/b", "file:///C:/pro
jects/rich.html"]
=> true
irb(main):007:0>

파일:///3 슬래시

% launchy --debug file://Users/jeremy/x.html
...
LAUNCHY_DEBUG: commandline_normalized => /usr/bin/open file://Users/jeremy/x.html
The file /jeremy/x.html does not exist.
file:///@copiousfreetime 알겠습니다.그래서 저희가 하고 있어요.https://github.com/ryanb/letter_opener/blob/master/lib/letter_opener/delivery_method.rb#L15file://가 OSX/와 Windowsfile://<hostname>/path/to/file에서 앞줄 평행봉이 달린 경로를 되돌려준 이상 Windows와 Unix에서 그것을 처리하는 가장 좋은 방법은 무엇일까?

토론 #21

개인적으로 나는 네가 다음과 같은 몇 가지를 할 수 있기를 바란다. 우리는 다른 모든 것이 Launchy의 잘못이라고 생각한다.
% launchy --debug file:///Users/jeremy/x.html
...
LAUNCHY_DEBUG: commandline_normalized => /usr/bin/open file:///Users/jeremy/x.html
try this gistlaunchy를 사용하여 일련의 테스트를 실시했다.만약 당신이 한 무더기의 프로젝트로 messages.first.filepath 채울 수 있다면, 합리적인 다른 프로젝트 업데이트 /Users/nash/foo.html 를 사용해서 그것을 실행하고 출력을 나에게 보낼 수 있다면, 우리는 적합한 해결 방안을 찾을 수 있을 것이다.
@schmich가 윈도우즈의 문제를 해결하는 데 도움을 줄 때 의견이 있는지 보실 수 있습니다https://github.com/copiousfreetime/launchy/issues/62
나는 오늘 대부분의 시간을 여행하며 가끔 인터넷 접속을 한다.임의로 그것을 시작 문제로 합쳐서 거기에 새로운 문제를 제출하십시오.C:/foo/bar.html@copiousfreetime는

토론 #22

작품만 있는 것 같아-https://gist.github.com/nashby/ab30ba94fc209bc88891rest_of_path 나는 두 플랫폼에서 모두 일을 할 수 있는 방법을 찾았다고 생각한다.다른 슬래시here를 추가하면 문제를 해결할 수 있을 것 같다.OSX와 Windows에서 테스트해 봤는데 모든 것이 좋습니다.어떻게 생각하세요?내가 뭘 놓쳤나?prefixes@guyisra에서 방금 해결 방안을 내놓았습니다.응용 프로그램에서 Master branch를 테스트할 수 있습니까?감사합니다!

토론 #23

네, 잘 일하고 있어요!감사합니다. 엄지 손가락 지원:

좋은 웹페이지 즐겨찾기