package Ġnl . h ann ah sten . tex ify idea . run . linux pdf viewer . ok ular Ċ Ċ import Ġcom . intellij . notification . Notification Ċ import Ġcom . intellij . notification . Notification Type Ċ import Ġcom . intellij . openapi . project . Project Ċ import Ġnl . h ann ah sten . tex ify idea . run . linux pdf viewer . Viewer Conversation Ċ Ċ /** Ċ Ġ* ĠExecute ĠOk ular Ġcommands . Ċ Ġ* Ċ Ġ* Ġ@ author ĠAb by ĠBer kers Ċ Ġ*/ Ċ object ĠOk ular Conversation Ġ: ĠViewer Conversation () Ġ{ ĊĠĠĠ Ġprivate Ġvar Ġpdf FilePath : ĠString ? Ġ= Ġnull ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠExecute Ġa Ġforward Ġsearch , Ġopens Ġthe Ġpdf Ġfile Ġin Ġok ular Ġwith Ġthe Ġline Ġthat Ġcorresponds Ġto Ġthe Ġcursor Ġroughly Ġin Ġthe Ġcenter . ĊĠĠĠĠ Ġ* ĠUnfortunately Ġthis Ġline Ġdoes Ġnot Ġget Ġhighlighted . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġpdf Path ĠFull Ġpath Ġof Ġthe Ġpdf . ĊĠĠĠĠ Ġ* Ġ@ param Ġsource FilePath ĠFull Ġpath Ġof Ġthe Ġtex Ġfile . ĊĠĠĠĠ Ġ* Ġ@ param Ġline ĠLine Ġnumber Ġin Ġthe Ġsource Ġfile Ġto Ġnavigate Ġto Ġin Ġthe Ġpdf . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġoverride Ġfun Ġforward Search ( pdf Path : ĠString ?, Ġsource FilePath : ĠString , Ġline : ĠInt , Ġproject : ĠProject , Ġfocus Allowed : ĠBoolean ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// ĠIf Ġwe Ġare Ġnot Ġallowed Ġto Ġchange Ġfocus , Ġwe Ġcannot Ġopen Ġthe Ġpdf Ġor Ġdo Ġforward Ġsearch Ġbecause Ġthis Ġwill Ġalways Ġchange Ġfocus Ġwith ĠOk ular ĊĠĠĠĠĠĠĠ Ġif Ġ(! focus Allowed ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif Ġ( pdf Path Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpdf FilePath Ġ= Ġpdf Path ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif Ġ( pdf FilePath Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠThis Ġok ular Ġcommand Ġopens Ġthe Ġpdf Ġfile Ġusing Ġthe Ġdestination Ġcoming Ġfrom Ġthe Ġline Ġin Ġthe Ġtex Ġfile . ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcommand Ġ= Ġ" ok ular Ġ-- unique Ġ'$ pdf FilePath # src :$ line Ġ$ source FilePath '" ĊĠĠĠĠĠĠĠĠĠĠĠ ĠRuntime . get Runtime (). exec ( array Of (" bash ", Ġ"- c ", Ġcommand )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠNotification (" La TeX ", Ġ" Could Ġnot Ġexecute Ġforward Ġsearch ", Ġ" Please Ġmake Ġsure Ġyou Ġhave Ġcompiled Ġthe Ġdocument Ġfirst .", ĠNotification Type . ERROR ). notify ( project ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }