创建简单的 PHP 脚本编辑器

问题描述 投票:0回答:0

我正在尝试创建一个 PHP 游乐场,但我不知道如何制作编辑器本身。我一直在寻找所见即所得的编辑器来让我格式化/缩进代码,但我没有运气。

我不知道如何搜索那些PHP编辑器来集成到我的项目中,所以我开始自己制作一个,但我不是一个伟大的前端开发人员,这是我目前的尝试:

let lineNumber = 1
function updateLineNumbers() {
  const lineNumbers = document.querySelector(".line-numbers")
  const lines = document.querySelector("#php-code").value
  const splittedLines = lines.split("\n")
  
  do {
    const p = document.createElement("p")
    p.innerText = lineNumber
    lineNumbers.append(p)
    lineNumber += 1
  } while (lineNumber <= splittedLines.length)
}

const txtArea = document.querySelector('#php-code')
const tabSize = ' ' // one tab
let shiftPresed = false

txtArea.onkeydown = e => {
  const lines = txtArea.value.split('\n')
  
  // enter capture
  if (e.keyCode === 13) {
    updateLineNumbers()
  }
  
  // backspace capture
  if (e.keyCode === 8) {
    updateLineNumbers()
  }
  
  // shift capture
  if (e.keyCode === 16) {
    e.preventDefault()
    shiftPressed = true
  }
  
  // tab capture
  if (e.keyCode === 9) {
    e.preventDefault()
    if (shiftPressed) {
      
    }
  }
  
}

document.addEventListener("DOMContentLoaded", () => {
  updateLineNumbers()
})
textarea {
  width: 600px;
  height: 300px;
  resize: none;
  border-radius: 0 10px 10px 0;
  border-color: #aaaaaa;
  padding: 10px;
  font-family: monospace;
  margin-left: 60px;
}

.line-numbers {
  width: 60px;
  height: 320px;
  background-color: #dddddd;
  color: #aaaaaa;
  position: absolute;
  margin-right: 60px;
  text-align: center;
}

.line-numbers p {
  height: 1pt;
  margin-top: 10px;
}
<form method="POST">
  <div class="line-numbers"></div>
  <textarea id="php-code" name="php-code"></textarea>
  <button type="submit">Run</button>
</form>

您是否知道任何使用 HTML、CSS、JavaScript(或其他)创建的 PHP 编辑器包含到我的 PHP 项目中?

javascript php html css wysiwyg
© www.soinside.com 2019 - 2024. All rights reserved.