Astyle и AkelPad

Russian main discussion
Post Reply
  • Author
  • Message
Offline
Posts: 767
Joined: Mon Sep 28, 2009 10:03 am
Location: Minsk, Belarus

Astyle и AkelPad

Post by se7h »

Рабочий

Code: Select all

/// Process current file in external tool 

var WshShell=new ActiveXObject("WScript.shell"); 
var fso=new ActiveXObject("Scripting.FileSystemObject"); 
var pToolPath=AkelPad.GetAkelDir() + "\\AkelFiles\\Plugs\\AStyle\\AStyle.exe"; 
var pToolFlags="--style=java --indent=tab"; 
var hEditWnd=AkelPad.GetEditWnd(); 
var pTmpFile; 
var pText; 

if (pTmpFile=CreateTempFile()) 
{ 
    AkelPad.SaveFile(hEditWnd, pTmpFile, 65001, true, false); 

    if (pToolPath.search(/ /) != -1) 
      pToolPath="\"" + pToolPath + "\""; 
    if (pTmpFile.search(/ /) != -1) 
      pTmpFile="\"" + pTmpFile + "\""; 
    WshShell.Run("%COMSPEC% /c " + pToolPath + " " + pToolFlags + " " + pTmpFile, 0, true); 

    pText=AkelPad.ReadFile(pTmpFile); 
    AkelPad.SetSel(0, -1); 
    AkelPad.ReplaceSel(pText); 

  fso.DeleteFile(pTmpFile); 
} 


//Functions 
function CreateTempFile() 
{ 
  var oTmpFolder; 
  var oTmpFile; 
  var pTmpName; 

  if (oTmpFolder=fso.GetSpecialFolder(2 /*TemporaryFolder*/)) 
  { 
    pTmpName=fso.GetTempName(); 
    if (oTmpFile=oTmpFolder.CreateTextFile(pTmpName)) 
      oTmpFile.Close(); 
    return (oTmpFolder.Path + "\\" + pTmpName); 
  } 
  return ""; 
}
, связывающий AStyle с AP
Last edited by se7h on Tue Jun 29, 2010 9:57 am, edited 1 time in total.

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

se7h
На страничке указаны файлы с юниксовой косой чертой. Может так заработает:

Code: Select all

    if (pTmpFile1.search(/ /) != -1)
      pTmpFile1="\"" + pTmpFile1 + "\"";
    pTmpFile1=pTmpFile1.replace(/\\/g, "/");
Кстати, выложенный вами код, не соответствует тому, что в "Scripts collection". Также кодировку, следуя из описания Astyle, необходимо указать не 1200 (UTF-16LE), а например 65001 (UTF-8).

Offline
Posts: 767
Joined: Mon Sep 28, 2009 10:03 am
Location: Minsk, Belarus

Post by se7h »

я убрал лишний темпфайл, в астайл можно работать с одним
для htmltidy код вообще не менял

Offline
Posts: 767
Joined: Mon Sep 28, 2009 10:03 am
Location: Minsk, Belarus

Post by se7h »

Post Reply