LINUX.ORG.RU

Сообщения theNamelessOne

 

Middle button paste for Firefox

Доброго времени суток.

В связи с последними новостями об окончательном закапывании Оперы мигрирую на Лису. Сейчас нахожусь в процессе подбора расширений, которые добавят в Firefox функциональность, к которой я привык.

В общём, пока всё продвигается хорошо, но возник затык с функцией вставки средней кнопкой мыши. Как оно работало в Opera:

  1. Выделялась мышью ссылка или произвольный текст в любом окне (при этом выделенное содержимое попадало в PRIMARY selection).
  2. При нажатии средней кнопки мыши в любом месте (кроме полей ввода и ссылок) текущей вкладки (страницы) в этой вкладке загружалось содержимое PRIMARY selection: если содержимое распознавалось как валидная ссылка, то загружалась страница по этой ссылке, если нет, то выполнялся поиск содержимого в поисковом движке по умолчанию.
  3. То же самое происходило при нажатии средней кнопкой на панели вкладок, только при этом создавалась новая вкладка.

В Chrome, для сравнения, эта фича тоже работает (кроме второго пункта).

В Firefox из коробки (Firefox 26, перед установкой выполнил rm -rf ~/.mozilla) такого нет. Полез в гугл, нашёл middlemouse.contentLoadURL, установил в true — ничего не произошло. Перезапуск Firefox, выключение установленных расширений тоже не помогают.

Расширений на эту тему я не нашёл.

Может, кто-то уже сталкивался с такой проблемой? Поделитесь решением.

 

theNamelessOne
()

Разработка под iPhone в онтопике

Доброго времени суток.

Внезапно предложили написать несложное (вроде бы) приложение под iPhone за деньги. Я в раздумьях, стóит ли, т.к. раньше под ios не программировал, соответственно придется изучать язык и платформу в процессе разработки. При этом ни айфона, ни мака у меня нет. Существуют ли инструмент для разработки под ios для Линукса? Или мне нужно будет ставить макось в виртуалку (кстати, подводные камни есть)?

sudo cast mono.

 , ,

theNamelessOne
()

Эмуляция иерархичного списка с помощью стороннего виджета

Здравствуй, ЛОР!

Осваиваю веб-программирование на небольшом проекте. Имеется таблица с иерархией (т.е. поле parent_id в таблице БД), возникла необходимость представить эту информацию в наглядном виде, с отображением этой иерархии и возможностью сворачивать/разворачивать отдельные ее ветви, т.е. наподобие TreeView-виджетов различных GUI-тулкитов.

Нагуглил такую библиотеку на основе jQuery, предоставляющую необходимый виджет (посмотреть на него можно на странице примеров), почитал примеры, разобрался с отдачей данных в формате JSON. Все хорошо, все отображается, но возникла небольшая проблема с тем, чтобы заставить этот виджет работать как элемент формы (наподобие select). Проблема также усугубляется тем, что раньше с Javascript я не работал, и приходится осваивать его так сказать «по пути».

Я пока пришел к алгоритму, который хочу представить на ваш суд. В паре с каждым TreeView-виджетом будет идти hidden-поле, которое и будет определять значение (id в таблице БД) выбранного элемента, а при обработке события выбора элемента дерева (select) будет меняться значение этого поля. Но у меня возникли трудности с тем, как хранить id-шники (id не как html атрибут, а как идентификатор поля в БД) элементов вместе с названиями при генерации дерева, чтобы впоследствии использовать эти значения в обработчике. Единственный способ, который я придумал, использует поле template, которое определяет шаблон, по которому генерируются узлы дерева.

Суть в том, чтобы обернуть выводимый текст в некоторый тег TAG (кстати, какой тег можно использовать для этой цели?) с аттрибутом VALUE (соответствующий шаблон: «<TAG class='node-value' VALUE='#= item.id #'>#= item.text #</TAG>»), затем в обработчике искать ближайший к текущему узлу (параметр события, тип HTMLLIElement) элемент TAG с классом «node-value» и использовать значение его атрибута VALUE, на которое и будет меняться значение hidden-поля. Но это похоже на костыль.

Собственно, теперь сам вопрос: есть ли более правильный способ решить данную проблему?

Заранее спасибо.

 , ,

theNamelessOne
()

Пустое место для аватарок в заглавных сообщениях (при отключении показа аватарок в профиле)

При отключенных аватарках в теле заглавных сообщений остается пустое место по горизонтали.

Скриншот: http://storage3.static.itmages.ru/i/13/0201/h_1359718719_2323060_b30e2ff627.png

 

theNamelessOne
()

Не удается установить соединение с vpn-сервером на FreeBSD (ошибка 800)

Здравствуй, ЛОР!

На FreeBSD-сервере стоит vpn-сервер (pptp) на базе mpd5 для осуществления доступа извне к внутренней сети. С недавних пор любая попытка подключения к серверу (подключение производится с помощью стандартных средств офтопика) заканчивается ошибкой 800.

Цимес в том, что после успешного завершения эпопеи с настройкой PPPoE-соединения vpn работал нормально, а я с тех пор вроде бы не делал никаких изменений, которые могли его сломать.

Что я изменил с того момента:

  • добавил скрипт с минимальным набором правил для файрволла ipfw вместо опции firewall_type=«OPEN» в rc.conf — /etc/ipfw.rules:
    #!/bin/sh
    
    FW="/sbin/ipfw"
    BANLIST="table(1)"
    
    ${FW} -f flush
    
    ${FW} add allow ip from any to any via lo0
    ${FW} add deny ip from any to 127.0.0.0/8
    ${FW} add deny ip from 127.0.0.0/8 to any
    
    ${FW} add deny all from ${BANLIST} to me
    
    ${FW} add allow ip from any to any

    Опции ipfw в rc.conf:

    firewall_enable="YES"
    firewall_logging="YES"
    firewall_quiet="NO"
    firewall_script="/etc/ipfw.rules"
  • Настроил fail2ban для ssh

Настройки pptp-сервера в mpd.conf:

pptp_server:
        set ippool add poolsat 192.168.2.100 192.168.2.120
        create bundle template B
        set iface enable proxy-arp
        set iface idle 0
        set iface enable tcpmssfix
        set ipcp yes vjcomp
        set ipcp ranges 87.225.83.44/32 ippool poolsat

# Enable Microsoft Point-to-Point encryption (MPPE)
        set bundle enable compression
        set ccp yes mppc
        set mppc yes compress e40 e56 e128 stateless

# Create clonable link template named L
        create link template L pptp
# Set bundle template to use
        set link action bundle B
# Multilink adds some overhead, but gives full 1500 MTU
        set link enable multilink
        set link yes acfcomp protocomp
        set link no pap chap eap
        set link enable chap
        set link enable chap-msv1
        set link enable chap-msv2
# We reducing link mtu to avoid GRE packet fragmentation.
        set link mtu 1460
        set link keep-alive 10 60

# Configure PPTP and open link
        set pptp self ext0
# Allow to accept calls
        set link enable incoming

Что я сделал не так? В логах mpd только записи об успешном запуске mpd.

Заранее спасибо.

 , , ,

theNamelessOne
()

PPPoE подключение FreeBSD-маршрутизатора

Доброго времени суток.

Есть маршрутизатор на базе FreeBSD-сервера. Для доступа извне по RDP к машинам из локальной сети поднят VPN (pptp) сервер с помощью mpd5.

Все это было настроено первоначально и прекрасно работало, однако сейчас сменился провайдер.

Интернет-соединение должен осуществлять ADSL-модем Starnet AR800 через PPPoE.

Сам я в этом разбираюсь плохо, поэтому использовались маны и статьи из интернета.

Подключение при работе модема в режиме роутера я смог настроить, а вот заставить сервер подключаться по PPPoE к модему в режиме моста у меня не получилось.

Внешний интерфейс назван ext0, внутренний - int0.

Настройка ppp выполнялась по хэндбуку, ppp.conf:

default:
   set log Phase tun command
   set ifaddr 10.0.0.1/0 10.0.0.2/0

rostelecom:
   set device PPPoE:ext0
   set authname LOGIN
   set authkey PASS
   set dial
   set login
   add default HISADDR

Фрагмент rc.conf (закомментированы старые настройки):

# defaultrouter="46.52.189.41"
gateway_enable="YES"
hostname="<HOSTNAME>"

ifconfig_alc0_name="ext0"
ifconfig_en0_name="int0"

# ifconfig_ext0="inet 46.52.189.42 netmask 255.255.255.0"
ifconfig_ext0="inet <NEW_IP> netmask 255.255.255.0"
ifconfig_int0="inet 192.168.2.1 netmask 255.255.255.0"

# ...

Здесь <NEW_IP> - выделенный статический IP-адрес.

Пытаюсь поднять подключение:

ppp -ddial rostelecom

В stdout пишется «Using interface: tun0». Но интернета нет, ping ругается на unknown host.

Что я сделал не так?

И еще проблема: пытаюсь смонтировать флешку размером 32GB с NTFS:

mount -t ntfs /dev/da0s1 /mnt/usbflash

Флешка монтируется, файлы на ней читаются, но при попытке создать новый файл выдается ошибка, что такого файла не существует. Также при подключении флешки выдается что-то типа «GEOM: da0: partition 1 does not end on a track boundary»

Заранее спасибо.

 ,

theNamelessOne
()

[ruby][noob] Неожиданное поведение при сортировке

Доброго времени суток. Захотел отсортировать символы строки в алфавитном порядке — наткнулся вот на что:

irb(main):008:0> "foobar".respond_to? :sort
=> true
irb(main):009:0> "foobar".sort # WTF?
=> ["foobar"]
irb(main):010:0> "foobar".chars.to_a.sort.to_s # решил через жопу
=> "abfoor"

Интересует не столько правильное решение, сколько причина такого неожиданного поведения метода.

 ,

theNamelessOne
()

[latex] Вопросы по заголовкам и библиографии

Привет, ЛОР.

Делаю курсач в LaTeX. Возникли следующие вопросы. Как сделать, чтобы:

  1. заголовок раздела (section) в теле документа начинался с абзацного отступа, а вторая и последующие строки длинного заголовка начинались под первой буквой заглавной строки (т.е. с той же горизонтальной позиции)?

    То есть:

        1 Длинный заголовок, который (вместе с номером)
          начинается с абзацного отступа, а последующие строки
          начинаются прямо под первой буквой первой строки
    
        Тут c того же самого абзацного отступа начинается
    текст раздела

    Что есть сейчас:

    \usepackage{titlesec}
    
    % формат заголовка раздела
    \titleformat{\section}[block]{\bfseries}
             {\arabic{section}}{1ex}{\raggedright}
    
    \titlespacing*{\section}{0mm}{3.50ex plus 1ex minus .2ex}{2.3ex plus .2ex}
  2. в перечислении списка использованных источников вторая и последующая строки каждого элемента не выделялись отступами, т.е.:
        1 Блаблаблаблабла
    блабла
    
        2 Блаблаблаблабла
    блаблаблабла
    блабла

В качестве класса документа использую extarticle

PS. cast Evgueni, Eddy_Em

 

theNamelessOne
()

[ssh] No route to host

Всем доброго времени суток. Заранее извиняюсь за нубский вопрос.

Имеется два компьютера - desktop (192.168.0.100) и laptop (192.168.0.101) (оба под управлением Fedora 15), соединенные через router D-Link DIR-615 (laptop соединен по wi-fi). На обоих компах поднят sshd через 22 порт.

Теперь, собственно, в чем состоит проблема. Если с laptop'а удается зайти по ssh на desktop (и на localhost), то при попытки зайти c desktop'а на laptop выдается ошибка:

ssh: connect to host 192.168.0.101 port 22: No route to host

причем пинг проходит нормально, а конфиги sshd на обоих компах одинаковые.

Что я делаю не так? Заранее спасибо за ответы.

Upd: в сетях почти не шарю, так что по незнанию могу не предоставить какую-либо важную информацию, поэтому не стесняйтесь задавать наводящие вопросы :)

 

theNamelessOne
()

Вывод кириллицы в виджет wxErlang

Собственно, сабж. Не могу разобраться, как использовать кириллицу с wxErlang, чтобы она отображалась нормально, не «кракозябрами». Буду очень рад любой помощи.

theNamelessOne
()

emacs (console) и буфер обмена

Доброго времени суток.

Начинаю осваивать emacs, и возникла проблема с копированием текста из емакса в другие приложения и обратно. Для запуска емакса в иксах проблема решилась добавлением

(global-set-key "\C-w" 'clipboard-kill-region)
(global-set-key "\M-w" 'clipboard-kill-ring-save)
(global-set-key "\C-y" 'clipboard-yank)
в файл .emacs. Все бы хорошо, только такой трюк не работает, если запускать emacs в окне терминала (emacs -nw), а меня как раз-таки интересует этот случай. Буду благодарен, если подскажите пути решения проблемы.

theNamelessOne
()

RSS подписка на новые темы