Far Manager PE x86/x64

Столкнулись с проблемой в использовании Far? Здесь можно получить помощь.
Post Reply
User avatar
cmd.exe
Posts: 378
Joined: Fri 16 Apr, 2010 18:26
Location: Нижний Новгород
Has thanked: 181 times
Been thanked: 10 times
Contact:

Far Manager PE x86/x64

Post by cmd.exe »

По мотивам:

Для bin32\far.exe

Code: Select all

UseSystemProfiles=0
UserProfileDir=%FARHOME%\..\Profile\
UserLocalProfileDir=%FARHOME%\..\Profile32\
для bin64\far.exe

Code: Select all

UseSystemProfiles=0
UserProfileDir=%FARHOME%\..\Profile\
UserLocalProfileDir=%FARHOME%\..\Profile64\
тем самым мы разделяем:

Code: Select all

history.db
localconfig.db
plugincache32.db
plugincache64.db

И far-reboot для обновления сборки.



Тем самым директории плагинов были разделены.
При ошибках запуска проверьте far.exe или conemu.exe/conemu64.exe запускаются с правами администратора или нет.
p.s.
Причесал far.cmd ещё раз.
Тперь плагины ищем по своим папкам и ещё по папке %FARHOME%\..\Plugins\ для ANSI плагинов.
Тут используются элименты "магии", которые заставляют работать правильно данный скрипт.
Добавил pushd "%ConEmuDir%" Для вызова из любого места.
Мне очень понравились минорные правки, от montonero.
Добавил конфигурации для ConEmu.
I've been using Vim for about 2 years now, mostly because I can't figure out how to exit it. (c) I Am Devloper
I know nothing except the fact of my ignorance. (с) Socrates
User avatar
Smitis
Posts: 1709
Joined: Fri 18 Mar, 2005 12:51
Location: Питер
Has thanked: 23 times
Been thanked: 55 times

Far Manager PE x86/x64

Post by Smitis »

Мне кажется, корректнее проверять разрядность системы примерно так
set "FARHOMED=bin64"
if "%PROCESSOR_ARCHITECTURE%"=="x86" if not defined PROCESSOR_ARCHITEW6432 set "FARHOMED=bin32"
На всякий случай запуска из под 32-х разрядного приложения.
Разум когда-нибудь победит.
montonero
Posts: 463
Joined: Wed 25 Jun, 2008 16:55
Has thanked: 3 times
Been thanked: 9 times

Far Manager PE x86/x64

Post by montonero »

Тогда уж логично сделать так:

Code: Select all

set conemu=conemu.exe
if "bin64" == "%FARHOMED%" (
set conemu=conemu64.exe
)
if exist %conemu% %conemu% /cmd %FARHOMED%\far.exe /w
"Far... Far never changes..."
User avatar
John Doe
Бюрократ
Posts: 13855
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 428 times
Contact:

Far Manager PE x86/x64

Post by John Doe »

User avatar
cmd.exe
Posts: 378
Joined: Fri 16 Apr, 2010 18:26
Location: Нижний Новгород
Has thanked: 181 times
Been thanked: 10 times
Contact:

Far Manager PE x86/x64

Post by cmd.exe »

По поводу ключа far.exe /p"<path>" он работает как-то странно вместе с ConEmu.
Методом научного тыка, мне удалось заставить его работать так как мне надо.
Теперь у меня:
bin32\Plugins для 32 битных плагинов
bin64\Plugins для 64 битных плагинов
Plugins для ANSI плагинов и плагинов 32/64 которые всегда поставляются всё в одном.
I've been using Vim for about 2 years now, mostly because I can't figure out how to exit it. (c) I Am Devloper
I know nothing except the fact of my ignorance. (с) Socrates
User avatar
Smitis
Posts: 1709
Joined: Fri 18 Mar, 2005 12:51
Location: Питер
Has thanked: 23 times
Been thanked: 55 times

Far Manager PE x86/x64

Post by Smitis »

Речь про коммандный файл, который запустит ФАР. До макросов.
Разум когда-нибудь победит.
montonero
Posts: 463
Joined: Wed 25 Jun, 2008 16:55
Has thanked: 3 times
Been thanked: 9 times

Far Manager PE x86/x64

Post by montonero »

cmd.exe,
Вот это условие в вашем батнике

Code: Select all

if /i "bin64" == "%FARHOME%"
не имеет смысла, потому что оно будет выполняться всегда.
И зачем вы 2 раза проверяете наличие conemu.exe, если вы его в переменную помещаете?
"Far... Far never changes..."
User avatar
Smitis
Posts: 1709
Joined: Fri 18 Mar, 2005 12:51
Location: Питер
Has thanked: 23 times
Been thanked: 55 times

Far Manager PE x86/x64

Post by Smitis »

montonero wrote:cmd.exe,
Вот это условие в вашем батнике

Code: Select all

if /i "bin64" == "%FARHOME%"
не имеет смысла, потому что оно будет выполняться всегда.
Надо строчку переставить if "%PROCESSOR_ARCHITECTURE%"=="x86"... сразу после set "FARHOMED=bin64"
Разум когда-нибудь победит.
montonero
Posts: 463
Joined: Wed 25 Jun, 2008 16:55
Has thanked: 3 times
Been thanked: 9 times

Far Manager PE x86/x64

Post by montonero »

Я не понимаю, зачем батник так переусложнять. Надо быть проще. )

Code: Select all

@echo off
setlocal enableextensions
::Home Dir
pushd "%ConEmuDir%"
set "FARHOME=bin64"
set "ConEmuL=ConEmu64.exe"
if /i "%PROCESSOR_ARCHITECTURE%%PROCESSOR_ARCHITEW6432%"=="x86" (
	set "FARHOME=bin32"
	set "ConEmuL=ConEmu.exe"
)
endlocal & if exist "%ConEmuL%" start %ConEmuL% /cmd "%FARHOME%\far.exe" /w /p"%FARHOME%\Plugins;..\Plugins;Plugins"
goto :EOF
"Far... Far never changes..."
Post Reply

Return to “Нужна помощь”