2009-04-05 88 views
8

Theo dõi previous questions về chủ đề này, khi bạn tạo một trang web trong LaTeX cách tốt nhất để tạo url có chứa dấu ngã là gì? \verb tạo dấu ngã phía trên không đọc tốt và $\sim$ không sao chép/xóa tốt (thêm khoảng trắng khi tôi làm). Các giải pháp?Cách tốt nhất để tạo dấu ngã trong LaTeX cho trang web là gì?

Có vẻ như đây là một trong những thứ có sửa chữa rất dễ dàng ... nếu không, tại sao không?

+0

Chính xác bạn có ý nghĩa gì khi "tạo một trang web trong LaTeX"? Nếu bạn đang sử dụng một số loại LaTeX để dịch HTML, cái nào, và bạn đã xem tài liệu của nó chưa? –

Trả lời

10

Tôi muốn xem url package.

+0

Một '\ url' cung cấp dấu ngã được hạ xuống và sao chép/dán chính xác. Ngay và luôn. – physicsmichael

+0

Điều này hoạt động hoàn hảo ngoại trừ việc tôi thấy rằng nó ghi đè bất kỳ kiểu phông chữ nào được đặt cho tài liệu với kiểu phông chữ cố định chiều rộng cho văn bản URL. –

+1

@Ashwin Tôi thấy rằng công cụ này hoạt động để trả về phông chữ cho phông chữ của văn bản trước: '\ newcommand {\ urlwofont} [1] {\ urlstyle {same} \ url {# 1}}' – physicsmichael

0

\symbol{126} sẽ là một cách khác, nhưng trong phông chữ mặc định, nó cũng tạo ra dấu ngã được in đậm. Một hack xấu xí (nhưng những gì không có trong LaTeX) sẽ là sử dụng

${}_{\textrm{\symbol{126}}}$ 

tạo ra dấu ngã ở chế độ Math và đăng ký nó. Vì vậy, nó xuất hiện ở giữa dòng. Dường như làm việc cho một liên kết có thể nhấp được. Bạn luôn có thể tự mình đặt câu lệnh đó vào một lệnh :)

0

Tôi không phải là người dùng latex được thừa nhận, nhưng trang này có giúp ích không?

http://www.cse.wustl.edu/~mgeorg/html/tildalatex.html

Họ làm như sau:

\def\urltilda{\kern -.15em\lower .7ex\hbox{\~{}}\kern .04em} 
\def\urldot{\kern -.10em.\kern -.10em} 
\def\urlhttp{http\kern -.10em\lower -.1ex\hbox{:}\kern -.12em\lower 0ex\hbox{/}\kern -.18em\lower 0ex\hbox{/}} 

Cách này được sử dụng là

{\tt [email protected]\urldot wustl\urldot edu} 
{\tt \urlhttp www\urldot cse\urldot wustl\urldot edu/\urltilda mgeorg} 
1

Tôi nghĩ $ _ {\ widetilde {~}} $ làm việc tốt cho vấn đề dấu ngã.

+0

Ahh yes, nó có vẻ tốt. Nhưng nó không sao chép/dán từ pdf cũng! – physicsmichael

6

Tôi biết đây là một câu hỏi cũ, nhưng gần đây tôi đã nghĩ ra điều gì đó, mặc dù thiếu sự sang trọng nghiêm trọng, hoạt động rất đẹp.

\catcode`~=11 % make LaTeX treat tilde (~) like a normal character 
\newcommand{\urltilde}{\kern -.15em\lower .7ex\hbox{~}\kern .04em} 
\catcode`~=13 % revert back to treating tilde (~) as an active character 

Bây giờ bạn có thể sử dụng \ urltilde bên trong một thẻ \ url (ngay cả trong một tập tin .bib) và: 1) URL sẽ hiển thị một cách hoàn hảo; 2) nhấp vào URL sẽ đưa bạn đến địa chỉ chính xác; và, 3) sao chép-dán sẽ đặt địa chỉ chính xác vào khay nhớ tạm.

Đây là giải pháp duy nhất tôi đã tìm thấy đáp ứng cả ba yêu cầu này. Tôi hy vọng nó giúp ai đó ra khỏi đó.

+0

Câu trả lời hay, Ryan. – physicsmichael

+1

Rất tiếc. Trên thực tế, điều này không hoạt động với url.sty chuẩn. Tuy nhiên, điều này (thậm chí xấu xí) hack hiện: \ catcode' ~ = 11 \ def \ UrlSpecials {\ do \ ~ {\ kern -.15em \ lower .7ex \ hbox {~} \ kern .04em} } \ catcode' ~ = 13% dán ngay lập tức này * sau * bạn bao gồm url.sty và bạn chỉ có thể đặt dấu ngã ngay trong URL của mình mà không cần bất kỳ lệnh đặc biệt nào. – Ryan

+0

Tôi đã thay thế \ hbox {~} bằng \ hbox {\ texttt {~}} để lấy dấu ngã được sao chép và dán chính xác. Tôi đã sử dụng \ urltilde bên trong lệnh \ href (trên Mac OS X tới Safari bằng phông chữ mặc định trên phân phối latex cao cấp) –

2

Tôi nghĩ tốt hơn nên sử dụng mã hóa URL trong trường hợp này (xem, ví dụ: http://www.blooberry.com/indexdot/html/topics/urlencoding.htm).

Điều đó có nghĩa là thay thế dấu ngã trong liên kết bằng% 7E.

Có thể nó trông không đẹp trong tài liệu cuối cùng (người đọc sẽ thấy% 7E thay vì dấu ngã), nhưng ít nhất chức năng sao chép dán hoạt động chắc chắn, điều tôi nghĩ là điều quan trọng nhất.

Ví dụ, đối với các liên kết www.example.com/~someuser/somepage.htm tôi sử dụng đoạn mã sau:

{\tt http://www.example.com/\%7Esomeuser/somepage.htm} 

PS: Điều này cũng áp dụng cho tất cả các liên kết với các không gian màu trắng hoặc bất kỳ khác biệt nhân vật.

1

Tôi muốn đề nghị sử dụng %7e

\tt{http://example.com/\%7etest} 

tt là để làm cho nó monospace.

Có vẻ hơi khác một chút, nhưng nó cho phép sao chép và dán.

+0

Cách tiếp cận tốt đẹp. Tôi có thể xác nhận nó hoạt động với hyperref và copy-pastes tốt. – physicsmichael

1

gói url không hoạt động đối với tôi. hyperref thực hiện công việc.

\usepackage{hyperref} 
\url{http://website.com/~username/some_stuff/} 
Các vấn đề liên quan